如何使用Python和Mechanize爬取网站
我该如何用Python的Mechanize库来爬取一个网站,递归地跟踪每个页面上的每个链接呢?
我在教程和Mechanize的文档中看到的每个例子,都只是展示了如何按照一个浏览的“路径”去操作,比如说先去主页,填写一个表单,点击提交,然后处理响应,而不是如何抓取整个网站。
1 个回答
2
这里有一些伪代码可以帮助你入门,如果你需要更多的帮助,请告诉我:
br = make browser object
visited=set()
max_depth=10
def crawl_all_links(browser,depth):
if depth <= max_depth:
for link in browser.links():
if link not in visited:
visited.add(link)
browser.open(link)
do_something(browser.read())
crawl_all_links(browser,depth+1)
browser.back()
crawl_all_links(browser,0)