Crontab作业无法正常运行多个Scrapy Spider

时间:2019-06-08 05:43:41

标签: linux cron scrapy

我有一个crontab作业,它运行一个 myautorun.sh 文件,该文件包含3个Spider:

crontab -e

14 * * * * * ~bin/myautorun.sh

和myautorun.sh看起来像这样:

scrapy crawl spider1 &
scrapy crawl spider2 &
scrapy crawl spider3

每个蜘蛛刮20页。

运行cronjob时,它最终会在30左右的可变刮擦页面上结束,而永远不会是60。 每个蜘蛛读取几页,但不能读取全部20页。但是,如果我评论两个蜘蛛并一次单独运行它们,它会给我60。

所以我很困惑为什么它不能正确运行并行蜘蛛, 我正在使用Crawlera运行Spider,它们位于1GB的ram虚拟服务器上。

是否有任何设置或缺少的任何内容? 谢谢

2 个答案:

答案 0 :(得分:0)

我用3GB内存创建了另一个虚拟服务器,它解决了这个问题!

答案 1 :(得分:0)

array1 with: array2 do: [ :a :b | a == b ifFalse: [ ^ false ]]. ^ true 表示您正在并行运行它们,所以这可能是个问题,您的蜘蛛占用了太多内存,因此被杀了

无论如何,您还应该将Spider的输出重定向到日志文件,以便将来出现任何错误时,您都可以看到发生了什么事

&