【发布时间】:2012-08-27 14:01:42
【问题描述】:
我最近看了python-requests 模块,我想用它写一个简单的网络爬虫。给定一组起始 url,我想编写一个 Python 函数,在起始 url 的网页内容中搜索其他 url,然后再次调用相同的函数作为回调,并将新的 url 作为输入,依此类推。起初,我认为event hooks 将是用于此目的的正确工具,但它的文档部分非常稀疏。在another page 上,我读到用于事件挂钩的函数必须返回传递给它们的相同对象。所以事件挂钩对于这类任务显然是不可行的。或者我只是没有做对......
这是我想做的一些伪代码(借自一个伪 Scrapy 蜘蛛):
import lxml.html
def parse(response):
for url in lxml.html.parse(response.url).xpath('//@href'):
return Request(url=url, callback=parse)
谁能告诉我如何使用 python-requests 做到这一点?事件挂钩是正确的工具还是我需要不同的东西? (注意:由于各种原因,我不能选择 Scrapy。)非常感谢!
【问题讨论】:
标签: python callback web-scraping python-requests