Como posso fazer o cron executar meu script Python? [duplicado]

1

Eu fiz um pequeno script que pergunta ao Yobit sobre a concorrência do bitcoin e envia algumas notificações no Ubuntu 17. Ele funciona bem se eu executar o comando python coinrates.py . Tornei-o executável e coloco #!/usr/bin/python no topo do arquivo, mas não funciona automaticamente em cron .

Eu tentei:

* * * * * ~/test/yobit/checker.py

e

* * * * * python ~/test/yobit/checker.py

Mas isso não funciona.

Aqui está meu syslog

Dec  2 12:01:00 plombir-N53SV systemd[1]: Started Run anacron jobs.
Dec  2 12:01:00 plombir-N53SV anacron[1303]: Anacron 2.3 started on 2017-12-02
Dec  2 12:01:00 plombir-N53SV anacron[1303]: Normal exit (0 jobs run)
Dec  2 12:17:01 plombir-N53SV CRON[1888]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec  2 13:01:04 plombir-N53SV systemd[1]: Started Run anacron jobs.
Dec  2 13:01:04 plombir-N53SV anacron[3601]: Anacron 2.3 started on 2017-12-02
Dec  2 13:01:04 plombir-N53SV anacron[3601]: Normal exit (0 jobs run)
Dec  2 13:17:01 plombir-N53SV CRON[3997]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec  2 14:00:38 plombir-N53SV systemd[1]: Started Run anacron jobs.
Dec  2 14:00:38 plombir-N53SV anacron[5171]: Anacron 2.3 started on 2017-12-02
Dec  2 14:00:38 plombir-N53SV anacron[5171]: Normal exit (0 jobs run)
Dec  2 14:17:01 plombir-N53SV CRON[5846]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec  2 15:04:01 plombir-N53SV systemd[1]: Started Run anacron jobs.
Dec  2 15:04:01 plombir-N53SV anacron[7072]: Anacron 2.3 started on 2017-12-02
Dec  2 15:04:01 plombir-N53SV anacron[7072]: Normal exit (0 jobs run)
Dec  2 15:17:01 plombir-N53SV CRON[7374]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec  2 16:01:41 plombir-N53SV systemd[1]: Started Run anacron jobs.
Dec  2 16:01:41 plombir-N53SV anacron[8489]: Anacron 2.3 started on 2017-12-02
Dec  2 16:01:41 plombir-N53SV anacron[8489]: Normal exit (0 jobs run)
Dec  2 16:17:01 plombir-N53SV CRON[8881]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec  2 17:04:01 plombir-N53SV systemd[1]: Started Run anacron jobs.
Dec  2 17:04:01 plombir-N53SV anacron[10177]: Anacron 2.3 started on 2017-12-02
Dec  2 17:04:01 plombir-N53SV anacron[10177]: Normal exit (0 jobs run)
Dec  2 17:17:01 plombir-N53SV CRON[10489]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec  2 18:01:03 plombir-N53SV systemd[1]: Started Run anacron jobs.
Dec  2 18:01:03 plombir-N53SV anacron[11610]: Anacron 2.3 started on 2017-12-02
Dec  2 18:01:03 plombir-N53SV anacron[11610]: Normal exit (0 jobs run)
Dec  2 18:17:01 plombir-N53SV CRON[12238]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec  2 19:01:15 plombir-N53SV systemd[1]: Started Run anacron jobs.
Dec  2 19:01:15 plombir-N53SV anacron[13850]: Anacron 2.3 started on 2017-12-02
Dec  2 19:01:15 plombir-N53SV anacron[13850]: Normal exit (0 jobs run)
Dec  2 19:10:57 plombir-N53SV crontab[14200]: (plombir) BEGIN EDIT (plombir)
Dec  2 19:11:19 plombir-N53SV crontab[14200]: (plombir) REPLACE (plombir)
Dec  2 19:11:19 plombir-N53SV crontab[14200]: (plombir) END EDIT (plombir)
Dec  2 19:12:01 plombir-N53SV cron[770]: (plombir) RELOAD (crontabs/plombir)
Dec  2 19:17:01 plombir-N53SV CRON[14450]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec  2 19:19:01 plombir-N53SV CRON[14641]: (root) CMD (   test -x /etc/cron.daily/popularity-contest && /etc/cron.daily/popularity-contest --crond)
Dec  2 19:26:45 plombir-N53SV crontab[14932]: (plombir) BEGIN EDIT (plombir)
Dec  2 19:27:00 plombir-N53SV crontab[14932]: (plombir) END EDIT (plombir)
Dec  2 19:27:02 plombir-N53SV crontab[14950]: (plombir) BEGIN EDIT (plombir)
Dec  2 19:28:52 plombir-N53SV crontab[14950]: (plombir) REPLACE (plombir)
Dec  2 19:28:52 plombir-N53SV crontab[14950]: (plombir) END EDIT (plombir)
Dec  2 19:28:59 plombir-N53SV crontab[15043]: (plombir) LIST (plombir)
Dec  2 19:29:01 plombir-N53SV cron[770]: (plombir) RELOAD (crontabs/plombir)
Dec  2 19:45:29 plombir-N53SV crontab[15654]: (plombir) LIST (plombir)
Dec  2 19:56:06 plombir-N53SV crontab[16106]: (plombir) BEGIN EDIT (plombir)
Dec  2 19:56:28 plombir-N53SV crontab[16120]: (plombir) BEGIN EDIT (plombir)
Dec  2 19:56:50 plombir-N53SV crontab[16120]: (plombir) REPLACE (plombir)
Dec  2 19:56:50 plombir-N53SV crontab[16120]: (plombir) END EDIT (plombir)
Dec  2 19:57:01 plombir-N53SV cron[770]: (plombir) RELOAD (crontabs/plombir)
Dec  2 19:59:07 plombir-N53SV crontab[16250]: (plombir) BEGIN EDIT (plombir)
Dec  2 19:59:48 plombir-N53SV crontab[16250]: (plombir) REPLACE (plombir)
Dec  2 19:59:48 plombir-N53SV crontab[16250]: (plombir) END EDIT (plombir)
Dec  2 20:00:01 plombir-N53SV cron[770]: (plombir) RELOAD (crontabs/plombir)
Dec  2 20:00:19 plombir-N53SV crontab[16278]: (plombir) BEGIN EDIT (plombir)
Dec  2 20:04:38 plombir-N53SV systemd[1]: Started Run anacron jobs.
Dec  2 20:04:38 plombir-N53SV anacron[16445]: Anacron 2.3 started on 2017-12-02
Dec  2 20:04:38 plombir-N53SV anacron[16445]: Normal exit (0 jobs run)
Dec  2 20:08:25 plombir-N53SV crontab[16598]: (plombir) LIST (plombir)
Dec  2 20:17:01 plombir-N53SV CRON[16931]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Dec  2 20:28:20 plombir-N53SV crontab[17378]: (plombir) BEGIN EDIT (plombir)
Dec  2 20:29:11 plombir-N53SV crontab[17378]: (plombir) REPLACE (plombir)
Dec  2 20:29:11 plombir-N53SV crontab[17378]: (plombir) END EDIT (plombir)
Dec  2 20:30:01 plombir-N53SV cron[770]: (plombir) RELOAD (crontabs/plombir)
Dec  2 20:32:19 plombir-N53SV crontab[18553]: (plombir) LIST (plombir)
Dec  2 20:37:00 plombir-N53SV crontab[19748]: (plombir) LIST (plombir)
Dec  2 20:37:17 plombir-N53SV crontab[19765]: (plombir) LIST (plombir)
    
por Yahya 02.12.2017 / 17:49

1 resposta

2

Você precisa usar o caminho completo no seu arquivo bin do python. Na linha de comando, digite:

whereis python

Você deve ver algo como: /usr/bin/python e talvez alguns outros. Use esse caminho completo no seu arquivo cron, por exemplo:

* * * * * /usr/bin/python ~/test/yobit/checker.py

Em seguida, use também o caminho completo para seu diretório pessoal:

* * * * * /usr/bin/python /home/USERNAME/test/yobit/checker.py
    
por kingmilo 02.12.2017 / 17:53