渋谷ほととぎす通信

完全趣味でやってるUnityメモ。説明できないところを説明できるようにするための個人ブログ。昨日の自分より少しでも大きくなれるように。。。 ※所属団体とは一切関係がありません

PythonでOpenWeatherMapから東京の天気を定期的に取得して保存する


前回記事からの続きです。
最低限の機械学習の知識を手に入れるため勉強中。

前回実装したOpenWeatherMapからJSONで結果を受け取ったものを、今回はファイルとして定期的に保存するということをやります。
本書では定期実行をcronで実現しています。

  1. Pythonファイルを実行するとOpenWeatherMapから東京の天気結果JSON取得
  2. 取得したJSONをローカルに保存する
  3. そのPythonファイル実行自体をcronで定期実行させる

このような処理を書いていこうと思います。

実行Pythonファイルのソースコードはコチラ

定期実行させるためのcronを設定します。

vim crontab -e

上記のコマンドを実行するとcron設定ファイルが開きます。

このように記述すると先のOpenWeatherMapの結果JSONが、weahter/weather2017-11-18-02-11.jsonというようなファイル名で毎分保存されます。

f:id:esakun:20171118022341p:plain:w250

しかし、1点落とし穴にハマりまして、今までPythonを実行した場合は、そのPythonファイルを基準にしたパスにJSONファイルが保存されていたのですが、cronで実行した場合は、/Users/ユーザーネーム/階層が基準となるということです。

このcronを実行するとJSONファイルは/Users/ユーザーネーム/配下に出来てしまうので注意が必要です。最初分かんなくて出来上がったファイルを探してしまいました。

最後に

もう2017年11月も後半戦、このPython本を年内に終わらせれるだろうか。

以前から欲しかった、かなり良書と噂されているこの本も最近買ってしまったので、このPython本の読了が急がれます。

参考サイト