2016-06-07 86 views
0

crontab中的代码0 * * * * cd /home/scrapy/foo/ && scrapy crawl foo >> /var/log/foo.logcron无法运行Scrapy

无法运行爬网,因为我的日志文件中没有日志。 我使用0 * * * * cd /home/scrapy/foo/ && pwd >> /var/log/foo.log进行测试,它在日志中回显'/ home/scrapy/foo'。

我也试过PATH=/usr/local/binPATH=/usr/bin,但没有成功。

我可以通过在命令行中键入cd /home/scrapy/foo/ && scrapy crawl foo来手动运行它。

有什么想法?谢谢。

回答

0

问题解决了。而不是像root那样运行爬网,请使用crontab -u user -euser创建一个crontab,并以user运行。

-1

您应该使用日志模块(https://docs.python.org/2/library/logging.html)不重定向。(如果你使用记录模块,您可以处理日志路径和日志级别)

,并尝试在crontab中这段代码

0 * * * * /usr/bin/python2.7 /your/file/path/filename 

(或scrapy ..任何你想要的)

+0

这里没什么关系。 'cron'会将任何在命令行输出的信息放入'foo.log'中 – Harrison