MD Blog

誰かの何かに役に立てることを書いていきたいです

Webサイトの更新を捕まえるRubyスクリプトを書きました

不定期にイベント情報が更新されるWebサイトがあるのですが、いつも見逃してしまうので今年こそは見逃さないようにスクリプトを書きました。

特定URIのHTMLを定期的に取得して、前回のHTMLと比較して追加分だけを抽出し、設定したワードが書き込まれていたらメールを送信します。

 

github: https://github.com/mishimadesign/cormorant

  1. config.yamlに送信元のメール設定と、監視するURIと探すワードと送信先メールアドレスを設定します。監視対象はいくつでも設定可能です。ワードは正規表現です。
  2. HTML取得間隔をclock.rbに設定します。1.hourのところを10.seconds, 3.minutes, 1.dayなどに変更できます(詳しくは https://github.com/adamwiggins/clockwork )。
  3. Herokuへアップロードします(詳しくは http://www.ownway.info/Ruby/index.php?heroku%2Fhelloclockwork  )。または、bundleが実行できる環境で"bundle install"してforemanが実行できる環境で"foreman start"で実行。

おすすめ設定
 - uri:   http://www.ntv.co.jp/kinro/lineup/
   word:  カリオストロの城|天空の城ラピュタ|となりのトトロ|火垂るの墓|魔女の宅急便|おもひでぽろぽろ|紅の豚|平成狸合戦ぽんぽこ|耳をすませば|もののけ姫|となりの山田くん|千と千尋の神隠し|猫の恩返し|ハウルの動く城|ゲド戦記|崖の上のポニョ|借りぐらしのアリエッティ|コクリコ坂から|風立ちぬ|かぐや姫の物語
   mail:  example@gmail.com