为特定的scrapy请求添加延迟

edA*_*a-y 5 python scrapy

是否可以延迟特定scrapy请求的重试。我有一个中间件,它需要将页面请求推迟到稍后的时间。我知道如何进行基本的延迟(队列结束),以及如何延迟所有请求(全局设置),但我只想延迟这个单独的请求。这在队列末尾附近最为重要,如果我进行简单的延迟,它会立即再次成为下一个请求。

Ana*_*r R -3

sleep() 方法将执行暂停给定的秒数。该参数可以是浮点数以指示更精确的睡眠时间。

所以你必须在你的蜘蛛中导入时间模块。

import time
Run Code Online (Sandbox Code Playgroud)

然后你可以在需要延迟的地方添加 sleep 方法。

time.sleep( 5 )
Run Code Online (Sandbox Code Playgroud)