mixiの標準で表示されるのは、自分の入っている全コミュニティーの中での最新更新トピックの一覧。
ただ、これだとまれにしか更新のないコミュニティーの記事をチェックすることが出来ない。
ということで、加入全コミュニティーについて、各コミュニティーの最新トピックを日時とともに一覧にするプログラムを作ってみた。
Ruby + Mechanize with Nokogiri ですんなりと出来たのだが、文字コードで苦戦。
同様の理由で「mixiをMechanizeで処理してるんだけど、ごく希におかしくなる」という人がいるかもしれないので、ここにメモしておく。
mixiの文字コードはEUC-JPなのだが、当然のようにみなさんJISにない丸数字とかを使うので、不正なEUC-JPとなり、Nokogiriで解析できないようだ。詳しく原因を調べようとしたのだが、大変そうなので断念。
これくらい許してくれよ〜と思いつつ、自分で変換してから、自分でparseしてなんとか。
本来は、 page = agent.get(url) で済むはずが、 page = Nokogiri::HTML.parse(agent.get(url).body.kconv(Kconv::UTF8,Kconv::EUC),nil,"UTF-8")
うーむ、バグとは言えないしなぁ。。。