chimeに備え付けのWebhooks等を使って電車の運行情報を定期的に自動送信するコードや設定を施していきます。datetimeの4種類です。requestでWebとの通信をし、bs4とjsonでデータの整形をしてChimeで設定したWebhookに情報を投げ込みWeb上にある運行情報をまとめて見られるようにします。datetimeは、chimeで日時の確認をしにくいのでメッセージ上に処理した日時を表示させるために使います。その他、Windows上でpythonを自動で実行させるためにタスクスケジューラを使用します。タスクスケジューラで上のコードを自動で実行することで、実行時点の運行情報をChimeで閲覧することができます。手順は大まかにfunasaki氏が記載した手順のとおりです。重複する内容であるため手早く箇条書きにします。URLを選択してURLを記録するコードの書き換え書き換え箇所は2つあります。1上の手順で記録したURLの登録と、2路線の登録の2つです。1つめに、関数postChime(JSON)のbaseURLとtokenを上の手順で記録したURLに置き換えてください。長く鳴りすぎているので分割していますが、見づらいと感じるようでしたら1行書きにしても全く問題はありません。2つめに路線の登録をします。情報の引用元としてヤフー路線情報を使用します。ヤフー路線情報から各路線の個別ページにアクセスしてURLをコピーしてください。“URL”の形式で入力してください。URLにはコピーしたURLを貼り付けます。複数の路線がある場合にはURLの後にカンマを入れて区切ります。路線名は自身でわかれば日本語でも問題ありません。修正後、プログラムを走らせてChimeで路線情報を受信できたらOKです。タスクスケジューラーの設定コードを書き換えて路線情報がChimeに送信することができたら、送信の自動化をします。Windowsの場合にはタスクスケジューラを使うと時間ベースのトリガーを簡単に設定できます。Winキーを押してタスクスケジューラと入力してアプリを呼び出します。開いたウィンドウの左側にあるタスクスケジューラライブラリ上で右クリックして新しいフォルダーを選びます。自身でわかる名前を入力してOKをしたらタスクスケジューラライブラリをダブルクリックして、作成したフォルダーをクリックします。画面中央の白い枠の中で右クリックして、新しいタスクの作成を選びます。タスクの名前はgetTrafficなどわかる名前にして、説明にはChimeに交通情報を送るなど適当に書きます。トリガータブをクリックして新規のトリガーを作成します。トリガーを作ることで特定の条件により自動でアプリを起動させるなどの処理ができます。設定でトリガーの発生頻度を選びます。平日に使うことを想定して毎週を選び、平日の曜日にチェックを入れます。開始には適当に使いはじめる日付を入力して、起動させたい時間を入力します。詳細設定は有効以外はチェックを外しておきます。必要があれば繰り返しなど使っても良いと思います。完了したらOKを押します。次に起動させるファイルの設定です。操作タブを選び、新規ボタンをクリックします。参照をクリックしてpython.exeを選びます。引数の追加には上記コードのファイル名(xxx.py)を入力して、開始にはxxx.pyがあるディレクトリのパスを入力します。ディレクトリのパスの末尾には\(¥)を入力しておいてください。入力が完了したらOKを押して、タスクの作成ウィンドウのOKボタンも押したら定期実行の準備が終わります。タブの設定を確認してください。コードの解説などPythonの基礎レベルができれば特に難しいコードでもなく初心者向けであると思います。POSTなど使っていますが使ったことがない方は入門にちょうど良いかもしれません。関数postChimeとともに、関数createJsonのsendJsonの部分を書き換えれば例えばLineやSlackに自動送信させることもできるかと思います。chimeはContentでメッセージを送るのが主な用途で、現時点ではファイルの添付に対応していないようです。クラウドドライブと連携すればURLでファイルを送ることもできますが、GoogleAppScriptと比べてしまうと不便に感じる面も多い気がします。bs4を使っています。POSTの処理にrequestsを使うのが都合が良いのも理由の1つです。seleniumはブラウザに合わせてDriverを用意する必要があり、動作する状態になってもページの読み込みに時間がかかったり、コードが横長に鳴りやすかったりなど手軽に使いにくい面もあります。bs4が良いような気がします。その他、postChimeの返り値にレスポンスを設定してあります。エラーを参照しつつ、返り値をPrintして動作確認するとエラーの原因が特定しやすいのではないかと思われます。WebhookSNSでもご購読できます。TwitterでフォローするFeedlyでフォローするK.M1992年生まれ。2016年5月にナルコレプシーの診断を受け,睡眠について学ぶようになりました。2019年3月からひっそりとお仕事を再開しました。*メールアドレス(公開はされません。*次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。date*日本語が含まれない投稿は無視されますのでご注意ください。