我使用 Jenkins 来安排我用 Python scrapy 框架编写的爬虫。抓取完成后,我使用“封闭”蜘蛛方法来准备结果。
问题是,如果我决定在 Jenkins 中使用“停止”按钮更早地停止我的蜘蛛,它会发送 SIGTERM 两次,这会迫使我的蜘蛛不干净地关闭。
如何强制 Jenkins 只发送一次 SIGTERM,或者如何在 Scrapy 中处理 SIGTERM 信号以忽略第二个 SIGTERM 信号并允许蜘蛛正常关闭?
我使用 Jenkins 来安排我用 Python scrapy 框架编写的爬虫。抓取完成后,我使用“封闭”蜘蛛方法来准备结果。
问题是,如果我决定在 Jenkins 中使用“停止”按钮更早地停止我的蜘蛛,它会发送 SIGTERM 两次,这会迫使我的蜘蛛不干净地关闭。
如何强制 Jenkins 只发送一次 SIGTERM,或者如何在 Scrapy 中处理 SIGTERM 信号以忽略第二个 SIGTERM 信号并允许蜘蛛正常关闭?