是否可以从Scrapy蜘蛛进入反应堆?

时间:2011-12-04 21:26:08

标签: scrapy

我正在寻找在Scrapy蜘蛛内实现爬行延迟的方法。我想知道是否可以从蜘蛛中访问reactor的callLater方法?这样可以很容易地在 n 秒之后解析一个页面。

1 个答案:

答案 0 :(得分:2)

您可以通过在设置文件中设置DOWNLOAD_DELAY来轻松设置延迟。

  

DOWNLOAD_DELAY

     

默认值:0

     

下载者之前应该等待的时间(以秒为单位)   从同一个蜘蛛下载连续的页面。这可以使用   限制爬行速度以避免过于严重地击中服务器。   支持十进制数。例如:

     

DOWNLOAD_DELAY = 0.25#250 ms延迟此设置也是   受RANDOMIZE_DOWNLOAD_DELAY设置影响(由。启用)   默认)。默认情况下,Scrapy不会等待一段固定的时间   请求之间,但使用0.5到1.5 *之间的随机间隔   DOWNLOAD_DELAY。

     

您还可以为每个蜘蛛更改此设置。

另见Scrapy's Docs - DOWNLOAD_DELAY