2011-11-02 77 views
0

通過shell腳本調用scrapy爬行程序,該腳本用作crontab項中的命令行。 shell腳本的樣子:從cron調用的scrapy腳本只有構造函數調用

scrapy爬行targethost.com

時,時間已到而它確實執行,但似乎只是調用構造函數(我與調試輸出驗證)。問題是由重新編寫shell腳本解決爲:

scrapy爬行targethost.com &> cronlog.log

我只是不知道是什麼原因。

回答

1

Scrapy執行正確,但不會將其所有消息輸出到標準輸出,因此簡單管道(>)不會將所有內容都重定向到您的文件中,只會導致到標準輸出(正如您所說的那樣)只是構造函數)。

&>它從scrapy獲取所有消息並將它們放入日誌中。

+0

但它確實在process_item中調用了記錄器方法,但沒有記錄任何內容,這表明process_item未被調用。然而,&&process_item被調用並且抓取成功。 – user891260

+0

'command&> file'只是將'command'的所有輸出重定向到'file'。它對'command'的執行沒有影響(至少我不知道)。你的問題必須在別的地方,但我坦白說,只要把那個'&>放在那裏,讓它成爲。 – naeg