Yahooニュースから情報取得(Webスクレイピング超初級その3)

みなさんこんにちは。

その2で完成したプログラムを実行すると、前回取得したトピックスと比較して、新しいトピックスがある場合は画面に表示されました。しかしこのままではいちいち手動で実行する必要があり、全く便利ではありません。

定期的に自動でプログラムを実行してくれて、さらにスマホでプッシュ通知を受け取れるようにその2のプログラムを改良していきます。

プッシュ通知には最初Gmailを使おうと考えていましたがもっと簡単なものがありました。LINEのAPIを利用します。

アクセストークンを発行してプログラムに張り付けるだけ。衝撃の簡単さ。自分だけでなくグループに対しても発行できるので情報共有などにも使えます。LINEすごい。通知は「LINE Notify」というボットが行います。

 

さて、次は「定期的に自動でプログラムを実行する」という部分。

私のパソコンだけでプログラムを動かすのであればbatファイルを使えば良いのですが、どうせならPythonの実行環境がないところで動かしたい!ということでpyファイルをexeファイルに変換することにしました。ツールがいくつかあるようですが、私の使用しているPython3.6では「pyinstaller」をインストールしたら変換できました。

その2をちょこっと改良したものが↓です。

前回まではトピックスの文字列だけを取得していましたが、今回は文字列+URLをまとめて1つの要素として管理することにしました。24,28行のところです。(間に空白を入れないとLINE側がURLと判断してくれず、直接クリックでリンクに飛べません)

37行「差集合があればリストとして取り出す」部分、前回は直接画面に表示していましたが、文字列として取り出してLINE_messageに渡します。42~53行のLINE API部分はリンクからのほぼコピペ。アクセストークンはご自分で取得したものをそのまま貼り付けてください。

hogehoge.txtの中身を開くとこんな感じです。

pyファイルを実行したら、ご自分のスマホにLINE Notifyから新しいトピックスのメッセージが届くはずです。便利~!

うまく実行できたpyファイルを、上に記載したリンク先を参考にしてexeファイルに変換します。私は実行中かどうかを確認したいので、引数は–onefileだけにしました。変換したexeファイルとhogehoge.txtは同じフォルダに入れておきexeファイルをダブルクリックすると同じようにLINEに通知がいくはずです。

最後に、exeファイルを定期的に実行するにはWindowsのタスクスケジューラを利用します。

私が説明するまでもありませんね 笑。お好みの間隔で実行するよう設定すれば完了!お疲れ様でした。次は何をしようかな~。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です