如何编写python脚本来搜索网站html以获得匹配的链接

时间:2010-03-04 04:02:46

标签: python scrape

我对python不太熟悉,必须编写脚本来执行一系列功能。 基本上我仍然需要的模块是如何检查网站代码以匹配事先提供的链接。

3 个答案:

答案 0 :(得分:5)

匹配链接是什么?他们的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修改此操作以执行任何操作。

答案 1 :(得分:3)

通常,您使用urlliburllib2(htmllib等)在Python中编程Web。您还可以使用mechanizecurl等。然后,为了处理HTML并获取链接,您可能希望使用BeautifulSoup等解析器。

答案 2 :(得分:0)

尝试scrapy,这是最全面的Web提取框架。

http://scrapy.org