Twitter bot 作っているよ

今のところ3つ。

  1. スマイルズ「自助論」bot (名言を1時間毎に)
  2. ゲーマニ出張所(仮) (過去出版されたゲームブックを1日3回、3冊づつ+新刊情報)
  3. 美味しいご飯を作って食べる! (つくレポ*1 10以上のレシピを朝昼晩3つ+amazon売れ筋情報)

基本 bot よりも低級です。ただ集めた情報を垂れ流すだけ。本当いえばメンションやツイートを監視しておいて反応するのが素敵なのでしょうが脊髄反射しているだけでは面白くないのでねぇ…。どうせやるなら、もうちょっと人っぽい振る舞いをするとかしないと作っててつまんないので、実装していません。もっといろいろやりたいのだけどデータ収集の点でいろいろアイディアを検討中です。


1, 2 についてはすでにツイートする情報が手元にあるので、それを定期的につぶやいているだけ。それでも心に響く言葉だったり、懐かしい作品名だったりするので、よろしければフォローしてやって下さい。


3 は技術的な実験も含んでます。この botクックパッドのレシピをツイートするそれなんですが、レシピ情報の抽出に手間取りまして。いつもWebサービスを作るときは大体 perl なんですけどね、通常Webスクレピングする場合 LWP を使えばいいんですが、レシピ自体は HTML 内の javascript で引っ張られており、単純に LWP で HTML を引っ張ると javascript 部分は処理されず取り出せないんですわ。情報が隠蔽されております。これ以前、ある動画サイトでいろいろやろうとしたときにクリアできなかった問題だったのですが、ある素敵モジュールを使えばクリアできました。


それが「WWW::Mechanize::Firefox」。加えて、Firefox とアドオン「MozRepl」を利用します。以下のページを参考にしました。助かった!


これでほぼどんなページのデータも拾えるようになりました(Firefox経由なので処理遅いけど)。なのでまあ作りたい、という気分が盛り上がったら別なのも適宜作る予定でございます。ところで将棋の対局結果を通知するアカウントとかありましたっけ?

*1:作りましたフォトレポートの略。 クックパッドに掲載されたレシピを自分でも作ったよ!という投稿された報告のこと。報告されるぐらいなので、作りやすかったり美味しく作れるレシピという可能性が高いのよ