2017-07-18 3 views
1

Ich versuche, einen Scrapy (installiert mit Anaconda2) -Crawler als Cron-Job auszuführen. Bisher kein Glück. HierRun Anaconda-Scrapy als Cron-Job

ist cron-Befehl:

* * * * * sh /home/username/anaconda2/folder/getdata.sh 

Die cron läuft alle 1 min (I die Protokolldatei überprüft, es scheint in Ordnung zu sein) Und hier ist der Code innerhalb der sh-Datei:

#!/home/username/anaconda2/bin/python 
cd /home/username/anaconda2/crawler_folder 
PATH=$PATH:/home/username/anaconda2/bin 
export PATH 
scrapy crawl spider 

Der sh-Code wird wie erwartet im Terminal, aber nicht als Cron-Job ausgeführt. Können Sie bitte helfen

+0

Sie können Ihre Cron-Protokolle dann überprüfen, zum Beispiel nach https://askubuntu.com/a/121560. Vielleicht ist der 'scrapy'-Befehl nicht verfügbar, wenn Cron ihn ausführt (Sie könnten mit 'welchem ​​scrapy' innerhalb dieses' .sh'-Skripts überprüfen) –

+0

Wenn ich das getan habe, wo kann ich das Ergebnis sehen? Im Protokoll wird nur angezeigt, dass der Cron-Job ausgeführt wurde. –

+0

Haben Sie diese askubuntu Antwort gelesen? Wenn du '* * * * * sh /home/username/anaconda2/folder/getdata.sh >> /home/username/myscript.log 2> & 1' tust, siehst du einen Scrapy-Crawl, der gestartet wird? –

Antwort

0

Dies funktionierte für mich als die SH-Datei und der Cron-Job wurde unverändert.

#!/home/username/anaconda2/bin/bash 
PATH=/home/username/anaconda2/bin:home/username/anaconda2/sbin 
cd /home/username/anaconda2/crawler_folder && scrapy crawl spider