我一直在搜索 scrapy 文档以寻找一种方法来限制允许我的蜘蛛发出的请求数量。在开发过程中,我不想坐在这里等待我的蜘蛛完成整个爬行,即使爬行非常专注,它们仍然需要相当长的时间。
我希望能够说,“在向我正在抓取的网站发出 x 次请求后,我停止生成新请求。”
在我尝试提出自己的解决方案之前,我想知道是否有我可能错过的设置或使用框架的其他方法。
我正在考虑实现一个下载器中间件,它可以跟踪正在处理的请求数量,并在达到限制后停止将它们传递给下载器。但正如我所说,如果可能的话,我宁愿使用框架中已有的机制。
有什么想法吗?谢谢。
最佳答案
您正在寻找 CLOSESPIDER_PAGECOUNT
setting of the CloseSpider
extension :
An integer which specifies the maximum number of responses to crawl. If the spider crawls more than that, the spider will be closed with the reason
closespider_pagecount
. If zero (or non set), spiders won’t be closed by number of crawled responses.
关于python - 用于测试的 Scrapy 限制请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30928177/