2010 年 1 月 のアーカイブ

Google Maps APIとTwitter APIを連携させて遊んでみた。

2010.1.29 金曜日

なんだかやたら忙しくなり、
忙しくなればなるほど余分なことやって遊びたくなるという。

何気なくTwitterのAPI仕様書を読み直してたら、検索用のAPIでgeocodeを指定出来るとのことで、試しにGoogle Maps APIと連携させてみた。

[TwitterMaps]

地図の右側に、表示範囲内で発言された最新15件のツイートを表示。
地図を動かす度にAPIを実行するので、制限(100回/1h)に引っかかりやすそう。

地図上にピンを打って表示できるかな…と期待してたんだけど、
検索のAPIは認証不要で使えるからか(?)戻ってくるデータにgeocodeが入ってこないみたい。

APIから戻ってくるデータは
「geo」には一律nullが入っていて、
「location」に、プロフィールの「現在地」がテキストで入っている物と、緯度経度が入っている物が混じってる感じだった。

Twitter用の人工無能BOTを作ってみた。

2010.1.22 金曜日

まぐ(β) (mag_bot)
http://twitter.com/mag_bot

followingの発言を随時読み取って学習し、1時間に1回くらいの頻度で独り言をつぶやきます。
Rubyで書かれており、形態素解析システムはChaSenを使用しています。

自動フォロー/リムーブについて

フォローをすると自動でフォローを返し、それ以降、貴方の発言からも学習するようになります。
※スパムアカウントのフォロー防止の為、以下の条件に当てはまった場合は自動フォローをしないようになっています。

  • 発言数が極端に少ない。
  • 発言内容が半角英数のみ。
  • ツイートが非公開になっている。

煩わしくなったらフォローを外して置くと、こちら側からも自動でフォローを外します。

※フォローのチェックは30分間隔で行ってます。

学習する言葉について

・URLやメールアドレスは覚えません。
・スクリーンネーム(@****)やハッシュタグ(#****)も覚えません。

リプライについて

@mag_botに対してリプライを送信すると、@mag_botからのリプライが返ってきます。
フォロー外の人のリプライにも答えます。
但し、同じ相手に対して連続でリプライを返さないようになっています。
一定時間が経過するor他の人へのリプライが挟まるとまた受け付ける状態に戻ります。

—————

先日、TwitterのBOTの話題を耳にしたときに、
何年か前にMargarine(marg)っていう人工無脳プログラムを使って、IRCのBOTを作ってみたら妙にいい感じだった事を思い出して、じゃあそれを使って俺も作ってみようかな、と。

そう思って、ブックマークしてたサイトを訪ねてみたら…既にサイトがなかった…と。

色々探してたら、SourceForgeが残っているのを発見。

Ruby + ChaSen + MySQLという環境が必要。
ChaSenもmargも文字コードEUCなので、それぞれUTF-8対応な状態にに改変した。

あとは、Ruby Twitter GemをインストールしてTwitter関係の動作を整えた感じ。