爬虫日记(86):Scrapy的Scheduler类

Posted caimouse

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬虫日记(86):Scrapy的Scheduler类相关的知识,希望对你有一定的参考价值。

上面已经准备了所有队列的对象,下一步我们就来分析怎么进入队列,以及怎么实现优先级队列管理这些请求。这些函数的调用关系如下:

因此我们需要从函数enqueue_request入手,先来分析它的代码:

第89行里的参数request就是要调度队列的请求对象。

第90行先判断是否允许过滤,如果不允许过滤就跳过这里;允许过滤就调用去重类的成员函数request_seen,在这个函数实现是否重复的请求判断。

第91行如果是重复的,就输出日志。

第92行跳过重复的请求,直接返回,不进入调度队列。

 

以上是关于爬虫日记(86):Scrapy的Scheduler类的主要内容,如果未能解决你的问题,请参考以下文章

爬虫日记(86):Scrapy的Scheduler类

爬虫日记(85):Scrapy的ExecutionEngine类

scrapy分布式爬虫设置

爬虫日记(63):Scrapy的设置参数-日志

scrapy怎么让爬虫一直循环抓取不停

爬虫日记(73):Scrapy程序运行入口点分析