【问题标题】:Scrapy spider not consistently terminating with use of CloseSpider extensionScrapy spider 不会始终使用 CloseSpider 扩展终止
【发布时间】:2020-04-29 17:47:28
【问题描述】:

我尝试在设置中使用CLOSESPIDER_TIMEOUT 扩展来杀死运行超过 3 小时的蜘蛛。

CLOSESPIDER_TIMEOUT = 3 * 60 * 60

虽然蜘蛛收到关闭超时请求,但它并没有真正停止蜘蛛,它继续运行。

对这种情况下出了什么问题有什么想法吗?

【问题讨论】:

    标签: scrapy


    【解决方案1】:

    如果您的蜘蛛收到关闭超时请求,则扩展程序似乎正在工作。看起来并没有什么问题,但您可能需要在蜘蛛完全关闭之前稍等片刻,因为它会先完成已经安排好的请求,然后再完全关闭。

    【讨论】:

    • 这也是我的假设,但是,当蜘蛛运行超过一天并超时 3 小时时。我假设出了点问题。有什么想法吗?
    • 我确认在CLOSESPIDER_TIMEOUT 之后-scrapy 将停止安排新的请求,并在CLOSESPIDER_TIMEOUT 之后继续执行已经安排好的请求。你也可以检查这个solution - 打电话给os._exit(0)
    • 确实不应该花那么长时间。您是否在管道/扩展中定义了任何 close_spider 方法?还是阻塞的图像/文件下载管道?您也可以尝试使用 telnet (docs.scrapy.org/en/latest/topics/telnetconsole.html),当它看起来被阻塞时,看看您在队列中是否有任何进展
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多