Cron
如何從 cron 正確執行爬蟲爬蟲
我將如何在需要在特定文件夾中執行命令
scrapy crawl empt.com
的作業中執行命令,例如:cron
/downloads/my_crawler/empt/empt/
然後命令scrapy crawl empt.com
我目前的
crontab
條目如下所示:0 */2 * * * * root /downloads/my_cralwer/empt/empt/ scrapy crawl empt.com
謝謝!
嘗試:
0 */2 * * * * root cd /downloads/my_cralwer/empt/empt/ && scrapy crawl empt.com
在每天早上 5 點添加以下行來
crontab -e
執行我的爬蟲。這是 crocs 答案的略微修改版本PATH=/usr/bin * 5 * * * cd project_folder/project_name/ && scrapy crawl spider_name
如果沒有設置
PATH
,cron 會給我一個錯誤“command not found: scrapy
”。我猜這是因為/usr/bin
執行程序的腳本儲存在 Ubuntu 中。請注意,我的 scrapy 項目的完整路徑是
/home/user/project_folder/project_name/
. 我env
在 cron 中執行了命令,發現 pwd 是/home/user
. 因此我跳過/home/user/
了crontab
上面cron 日誌在調試時很有幫助
grep CRON /var/log/syslog