通过计算 start_url 次调用来估计 Scrapy 进度
Estimate Scrapy progress by counting start_url calls
我正在尝试通过计算蜘蛛被调用的次数 start_url
来估计蜘蛛的进度,但我不确定如何检测它。
我意识到它远不能真正衡量当前的进度,因为蜘蛛不知道要抓取的剩余站点有多大。
关于如何获取 start_urls
的执行计数的任何想法?
看来您可以通过使用信号来完成此操作。具体来说,item_scraped 信号允许您在项目被抓取后注册一个事件。对于每个收到的响应,检查 response.url 是否在 start_url 列表中。
scrapy.signals.item_scraped(item, response, spider)
有关 scrapy 文档页面的更多信息:http://doc.scrapy.org/en/latest/topics/signals.html
我正在尝试通过计算蜘蛛被调用的次数 start_url
来估计蜘蛛的进度,但我不确定如何检测它。
我意识到它远不能真正衡量当前的进度,因为蜘蛛不知道要抓取的剩余站点有多大。
关于如何获取 start_urls
的执行计数的任何想法?
看来您可以通过使用信号来完成此操作。具体来说,item_scraped 信号允许您在项目被抓取后注册一个事件。对于每个收到的响应,检查 response.url 是否在 start_url 列表中。
scrapy.signals.item_scraped(item, response, spider)
有关 scrapy 文档页面的更多信息:http://doc.scrapy.org/en/latest/topics/signals.html