如何从字符串中获取所需的数据

时间:2012-04-19 13:35:42

标签: python

我有字符串,例如

s = '\r\n<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> \r\n\r\n<p>\r\n\t\r\n\t\t<A HREF="../temp/Table 32012419252223.xls">Click to download</A>\r\n\r\n\t\r\n\t</P>'

我需要从上面的字符串中仅提取/temp/Table 32012419252223.xls

其次,我有一个链接,例如

link = "www.example.com/flow/hardway/joshing/high"

现在我需要将上述链接中的"joshing/high"替换为第一个(/temp/Table 32012419252223.xls)的结果。

1 个答案:

答案 0 :(得分:2)

如果要解析HTML或XML文档,请使用approriate库。使用lxml和xpath的一个例子是:

from lxml.html.soupparser import fromstring
from urlparse import urljoin

s = 'yourhtml'
h = fromstring(s)
print urljoin(link, h.xpath('//a[1]/@href')[0]))

获取页面上的第一个链接。如果HTML更复杂,您还可以使用更复杂的XPath表达式。