我有字符串,例如
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
)的结果。
答案 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表达式。