Python scrapy,如何在单个蜘蛛中的每个请求之间做一个随机延迟?

use*_*505 4 python scrapy

我有一个蜘蛛,我希望在每个请求之间有一个延迟,但我不希望它是一个固定的数字,而不是两个边界之间的随机时间量,我该怎么做?

miz*_*gun 8

首先,避免使用,time.sleep因为它阻止了Twisted reactor,从而消除了Scrapy并发的所有优点.

默认情况下,Scrapy的DOWNLOAD_DELAY设置会在范围0.5 * DOWNLOAD_DELAY1.5 * DOWNLOAD_DELAY秒之间添加随机延迟.此行为通过RANDOMIZE_DOWNLOAD_DELAY设置默认为true.

文档:https://doc.scrapy.org/en/latest/topics/settings.html#std:setting-DOWNLOAD_DELAY

  • 啊,我不知道 RANDOMIZE_DOWNLOAD_DELAY (2认同)