Python+cron:定期実行処理

UNIX系のOSなら、大抵cronは標準でインストールされています。

cronの設定
 
cronの設定ファイルを開く


crontab -e

 
毎時10分に、python3.6で指定のpythonファイルを実行


10 * * * * /usr/bin/python3.6 /root/xxxx/xxxx/xxxxxx.py

 
毎日9時10分に実行


10 9 * * * /usr/bin/python3.6 /root/xxxx/xxxx/xxxxxx.py

メール受信

デフォルトでは実行ごとに結果がメールで通知されます

エラー時のみメールを受信


10 9 * * * /usr/bin/python3.6 /root/xxxx/xxxx/xxxxxx.py  1> /dev/null

 
正常時・エラー時双方ともメールを受信しない


10 9 * * * /usr/bin/python3.6 /root/xxxx/xxxx/xxxxxx.py >/dev/null 2>&1

その他注意

実行するpythonファイル自体が別ファイルを読み込む場合、相対パスではなく絶対パスで指定する必要があります

あるJSONファイルを読み込む場合

f = open('xxxxxx.json', 'r') #×

f = open('/root/xxxx/xxxx/xxxxxx.json', 'r') #〇

cron, python

Posted by iser