FC2ブログ

頭と尻尾はくれてやる!

パソコンおやじのiPhoneアプリ・サイト作成・運営日記


MacのPythonからIFTTTを使ってiPhoneに通知

機械学習で株価予測やってみたが
↑これに関連して、Pythonで日経平均採用銘柄225種の株価のスクレイピングをやってる。
時々インターネットの回線の具合が悪いのか、データを取りに行ったもののうまくいかずエラーで止まってることがある。そこで例外拾って再度動かす、というのもありだけど、スクレイピングなので意図しない不具合でアホみたいにリクエストしてサイトにブロックされても困るし、、、ってことでここは通知してもらいたい。

そんなわけで、エラー発生時にiPhoneにメールか通知でもできんかなあと調べてみた。
するとなにやらapnsなるものを使ってどうのこうのとすればいい、という記事はあるんだけど俺には難易度が高い。もっと簡単なのはないかのうと試したのがIFTTTを使ってみる方法。

1)エラー発生時など通知したいタイミングでMacのDropboxフォルダーにテキストファイルを保存する。

{
    req = urllib.request.Request(url)

    try :
        response = urllib.request.urlopen(req)
    except urllib.error.URLError as e:
        print(e.reason)
        MyUtility.sendErrorNotify(stockName)

    html = response.read()
}
↑呼び出す部分はこんな感じ。例外のとこで通知するようにしてる。
Pythonでの「通知」処理とは言っても単にDropboxの任意のフォルダー(ここではiftttとしてる)に適当なテキストファイルを保存するだけなのでコードは省略。

2)iPhoneのIFTTTアプリで「Dropboxのあるフォルダーにファイルが保存されたらiPhoneに通知」というAppletを作成

IFTTTのApplet

これでOK。
最初はGoogle Driveでやってみたけど試した時にGoogle Driveの調子が悪いのかうまくいかなかった。IFTTTで扱えるサービスで自分好みのを使えばよろしいかと。

IFTTTによる通知

↑実際のiPhoneの通知画面だとこんな感じ。文字もいろいろとカスタマイズできる。すごいな、IFTTT!
ただDropbox経由なのでホントに回線が切れっぱなしだと通知は来ないんだけどね。
機械学習の途中経過報告とかにも使えそう。

<< SceneKitのHitTestにオプション付けたらなぜかうまくいった  TopPage  機械学習で株価予測やってみたが >>

コメント


管理者にだけ表示を許可する
 

トラックバック

トラックバックURL
http://ringsbell.blog117.fc2.com/tb.php/1115-d288b1ff




Copyright ©頭と尻尾はくれてやる!. Powered by FC2 Blog. Template by eriraha.

FC2Ad