【PHP】複数のツイッターユーザーのつぶやきからタグクラウドを生成する!

  • このエントリーをはてなブックマークに追加

twittercloud
photo by Mark

タグクラウドってありますよね?

ちょっと前に流行ったサービスで、ツイッターの発言を解析して最近つぶやいてるワードをタグクラウドにして表示してくれる、というものがあったかと思います。

あれを複数のアカウントに対してできるコードを書いてみました。

これを使えば「SMAPメンバーたちのつぶやき」からタグクラウドを生成したり、「自民党議員たちのつぶやき」からタグクラウドを生成したり、いろんな遊び方ができる思います。

以下導入方法です!

必要なファイル・ライブラリ

必要なファイルは「twcloud.php」と「list.txt」です(←今回私が作ったファイルです)
必要なライブラリは「TwitterOAuth」です。

各ファイル・ライブラリを、こんな感じに配置してください。
twicloud
│ twcloud.php
│ list.txt
└─twitteroauth-master

※本コードは「PHP 5.4」で動作確認しました。これより低いバージョンだともしかしたら動かないかもしれないのでご注意ください。

※コード中で「Twitter API」と「Yahoo API テキスト解析:キーフレーズ抽出」を利用しています。あらかじめこれらの開発者アカウントの申請を済ませておいて、APIキーを入手しておいてください。

「twcloud.php」

「twcloud.php」の内容です。
このファイルを実行すると、「list.txt」に書いてあるTwitterユーザーの直近のつぶやき100件を取得して、そこからタグクラウドを生成して、結果をプリント出力します。

例外処理とかがてきとうなので、気に入らなかったらてきとうに修正してください。

「list.txt」

「list.txt」には、解析対象となるツイッターアカウントのスクリーンネーム一覧を記述します。

例えば「ラブライブの声優さんたちのつぶやきからタグクラウドを作りたい!」と思ったら、以下のように記述します。

「TwitterOAuth」ライブラリ

本コードはTwitter APIを利用するために「TwitterOAuth」のライブラリを使用しています。

TwitterOAuthライブラリを利用するには、下記のアブラハムさんのページからzipをダウンロードして、その中にある「twitteroauth-master」のディレクトリを「twcloud.php」と同じディレクトリに置いてください。

Twitter APIとYahoo API

本コードはTwitterのつぶやきを取得するために「Twitter API」を使っています。Twitter APIを利用するためにはAPIキーが必要です。あらかじめTwitter開発者アカウントを申請して、APIキーを取得しておいてください。

※Twitter APIには「180回/15分」といったような利用制限があり、頻繁にAPIを使うと利用できなくなる可能性があるのでご注意ください。

また、本コードでは文字列中の単語を解析するために「Yahooテキスト解析:キーフレーズ抽出API」を使っています。Yahoo APIを利用するためにはAPIキーが必要です。あらかじめYahoo開発者アカウントを申請して、APIキーを取得しておいてください。

※Yahoo APIには「50000回/一日」といったような利用制限があり、頻繁にAPIを使うと利用できなくなる可能性があるのでご注意ください。

おまけ

動作確認のために、下記のラブライブの声優さんたちのつぶやきからタグクラウドを作ってみました!果たしてどんな結果になるでしょうか・・!?

・新田恵海さん(@Nitta_Emi)
・内田彩さん(@aya_uchida)
・三森すずこさん(@mimori_suzuko)
・飯田里穂さん(@rippialoha)
・Pileさん(@pile_eric)
・徳井青空さん(@tokui_sorangley)
・楠田亜衣奈さん(@kusudaaina)
・南條愛乃(@nanjolno)

結果!

なるほど、こういう感じになりましたか~!以下順番に考察していきましょう!

・1位「RT」
みなさんリツイートを使って積極的にお仕事の情報を発信してるみたいです。フォロワーの数がすごいのでとても拡散力がありそうですね。
・2位「笑」
何か楽しい会話をしてるのでしょうか。「w」じゃなくてなんだかよかったです(笑)
・3位「たー」
私は初めこの言葉の意味がよく分からなかったのですが、どうやらみなさん「たー!」と語尾に付けて話すことが多いためランクインしたみたいです。声優さんたちの間で流行っている語尾なのでしょうか・・?
・4位「みんな」
ファンの方々に「みんなー!」と声をかけて積極的に呼びかけているみたいです。ラブライバーたちの結束力がますますアップしそうですね。
・5位「楠田亜衣」
楠田亜衣さんがお仕事情報のつぶやきをされているみたいです。くっすんサポーターを募集されてるらしいのでみなさん応募してあげてください!

以上、ちゃんと動作してるみたいです。よかったよかった。

  • このエントリーをはてなブックマークに追加

コメントをどうぞ

メールアドレスが公開されることはありません。