我已经设置了crontab来执行scrapy脚本,但它不起作用。 然后我在终端尝试相同的命令。但它运作良好。
rankAuction
的crontab:
$ crontab -l
*/10 * * * * cd ~/PRG/tutorials/tutorials/spiders && scrapy crawl nodecrawler
我该如何解决这个问题?请回答这个问题
谢谢
答案 0 :(得分:1)
检查您的Cron日志以查看最新情况
grep CRON /var/log/syslog
您必须收到Unknown command Scrapy
或类似错误
我确定这是因为Scrapy
不在PATH
要解决此问题,请执行此操作
在您的终端类型echo $PATH
复制输出,然后进入crontab -l
现在在该文件的顶部执行此操作
PATH=<PASTE WHAT YOU COPIED IN LAST STEP>
答案 1 :(得分:0)
您的crontab不知道抓取位置
which scrapy
会告诉您刮擦的位置,例如“ / usr / local / bin / scrapy”
更改为*/10 * * * * cd ~/PRG/tutorials/tutorials/spiders && /usr/local/bin/scrapy crawl nodecrawler > /var/log/cronscrapy.log 2>&1
/usr/local/bin/scrapy
将使抓取工作正常
> /var/log/cronscrapy.log
将在您的cron运行时在“ val / log / cronscrapy.log”处创建一个日志
2>&1
将同时向“ cronscrapy.log”输出标准输出和错误(如果有的话)
希望它可以帮助某人 `