世界のやまさ

SEKAI NO YAMASA

Diablo3 のメンテ情報を PDT から JST に変換させるツール作った

Diablo3 がいっつもメンテで出来ないので、勉強会で見た Rails とやらでツールを作ってみた。http://d3maintenance.herokuapp.com/
bootstrap を適当に適用しただけなので、UIはそのうちなんとかする。

やってることはService Status - Forums - Diablo IIIからメンテ情報っぽい箇所を抜き出して、さらに時間っぽい所をJSTに変換している。

メンテ情報っぽいところは Hpricot というライブラリを使いました。jQuery風にCSSセレクタRubyで書けますので、掲示板の一番先頭だけとりあえず抜き出してみました。次のサイトを参考にしました
Route 477 - RubyでHTMLとWebを操作するためのライブラリ、HpricotとWWW::Mechanize , HikiReload

時間っぽいところは正規表現で抜き出して、Ruby標準のTime.parseを使用しました。herokuはタイムゾーンがずれていたので、JSTにするためにHerokuのタイムゾーンを日本時間に設定する - アインシュタインの電話番号☎を参考にしました。

一番時間かかったのは heroku へのアップロードです。Windowsだと"heroku login"でException?例外?が発生してしまい、MACだとSSHキーが違うのを認識するせいか"git push heroku"で"Permission denied (publickey)."となってしまいました。
解決策としてはWindowsは有りませんでした。MACは~/.ssh/configを書くことで通るようになりました。Herokuで鍵がPermission denied (publickey). になる時 - opamp_sandoの日記 ...でいいよねを参考にしました。

次は定期的にクロールさせて、RSS吐いて、登録してたらメールやtwitterで通知等々を実装出来ればと思います。