【发布时间】:2010-03-04 04:02:46
【问题描述】:
我对python不太熟悉,必须编写一个脚本来执行许多功能。 基本上我仍然需要的模块是如何检查网站代码是否匹配预先提供的链接。
【问题讨论】:
我对python不太熟悉,必须编写一个脚本来执行许多功能。 基本上我仍然需要的模块是如何检查网站代码是否匹配预先提供的链接。
【问题讨论】:
匹配链接是什么?他们的 HREF 属性?链接显示文字? 也许是这样的:
from BeautifulSoup import BeautifulSoup, SoupStrainer
import re
import urllib2
doc = urllib2.urlopen("http://somesite.com").read()
links = SoupStrainer('a', href=re.compile(r'^test'))
soup = [str(elm) for elm in BeautifulSoup(doc, parseOnlyThese=links)]
for elm in soup:
print elm
这将获取somesite.com 的HTML 内容,然后使用BeautifulSoup 对其进行解析,只查找HREF 属性以“test”开头的链接。然后它会构建这些链接的列表并将它们打印出来。
您可以使用documentation 对其进行修改以执行任何操作。
【讨论】:
通常,您使用urllib、urllib2(htmllib 等)在 Python 中进行 Web 编程。您还可以使用mechanize、curl 等。然后,对于处理 HTML 和获取链接,您可能需要使用 BeautifulSoup 之类的解析器。
【讨论】:
试试scrapy,最全面的网页提取框架。
【讨论】: