Twitterトレンドキーワードのランキングサイト「ツイータン」では、Twitter APIを使って10分おきにトレンド情報を取得しておりましたが、そのデータが遂に400万レコードを超えるまでにたまっておりましたので、サイトをもう少し作りこんでみることにしました。

サイトの作りこみをするにあたって、新たに2つの機能をサイトに追加もしてみました。

一つは、トレンドワードの人気度推移をグラフで24カ月分見れるようにした、トレンド推移機能です。Googleトレンドみたいにグラフでワードの人気度を見れるものといった方が分かりやすいかもしれません。

もう一つは、トレンドキーワードの検索機能です。さすがに14万語以上もキーワードデータがたまると、検索機能がないことには使い物にならないとは思いましたので、新たに実装させてみました。

この記事では、「ツイータン」に追加したこの二つの機能の詳細と、これら機能をPHPとSQLで制作したポイントについて簡単にご紹介をしています。

ツイータンとは

指定した地域のトレンドワード取得ができる「Twitter GET trends/place API」を使い、Twitterのトレンド情報を2019年から集め始めました。その集めたデータを使って作ったサイトが「ツイータン」です。

Twitter APIで収集したトレンドデータをDBにためまくり、月次集計してキーワードの月別ランキングをご紹介するだけのサイトでしたが、データがこれだけたまったのにランキングだけでは寂しいと思ったので、新たに機能を考えました。

元になったTwitter APIのトレンドデータとは

Twitterでは、ツイッターのトレンド情報を地域別に取得することができるGET trends/place APIというAPIを公開しており、この情報を使っておりました。

TwitterAPIについては下記の記事でもご紹介しています。

Twitter APIへのOAuth認証はcowitterで対応

「ツイータン」のサイト構築で最も重要なPHPでTwitter APIに接続にはcowitterというライブラリを使っています。

TwitterOAuthを使う方が一般的かもしれないですが、たまたま見つけたウェブ制作会社さんの記事でcowitterの紹介をされていたので、mpywさん作成のライブラリcowitterでAPIからデータ取得をしています。知恵袋の初心者質問にも丁寧に答えていて、凄い優しい人っぽいです。

10分おきに集信したデータが400万レコード超えに

APIから一度に取得できるトレンドキーワード情報はたった50件ほどしかありませんが、データは5分毎に更新がされるようなので、cowitterでTwitter APIから取得したデータをDBにためるPHPを一本作成し、サーバ負荷も考えて10分おきにcronで走らせることにしてみました。

10分おきに50レコード、1時間で300レコード、1日で7200レコードくらいはたまるので、1年半ほど経過して、400万レコードを超えるデータがたまったようです。

トレンドワード・トレンドハッシュタグは14万語以上

Twitterのトレンドワード、トレンドハッシュタグ14万語以上を登録
登録されたトレンドワードは14万語以上

5分毎にトレンドデータは更新されるものの、トレンドとなるキーワードが5分毎に全部コロコロ変わるわけではありませんので、ログが400万レコードあったといっても、キーワードとしては14万語程度しかありませんでした。

このうち、トレンドのキーワードとハッシュタグの比率は3:1くらいでキーワード文字列の方が多くなっていました。ハッシュタグをつけた文字列の方がトレンドになりやすいというものではないようです。

ツイータンに新たな機能を付けました

Twitterトレンドランキングサイト「ツイータン」のサイトイメージ
Twitterトレンドランキングサイト「ツイータン」

たまったデータを有効活用するため、2個の新しい機能をサイトに実装させることにしました。

ツイート/ハッシュタグの検索機能

14万語もトレンドワード・トレンドハッシュタグの情報が集まったので、トレンドワードの検索機能を新たに付けてみました。検索するキーワードによっては数千件以上ヒットしてしまう単語もあったので、検索ヒット数の上限制限はつけておきました。ヒット数が多すぎると警告が出た場合は、複数キーワードで検索をしてみて下さい。

ツイート/ハッシュタグの24カ月トレンド推移グラフ

#乃木坂工事中のTwitterトレンド2年間推移をグラフとした画像
キーワードの24カ月のTwitterトレンド推移をチェックできます

これまでは単にトレンドのキーワード・ハッシュタグをランキングにして、単にTwitterのURLにリンクをしていただけでしたが、上にあるようなキーワードのトレンド推移を24カ月の推移グラフで確認できる画面を新たに作り、そこに飛ぶようにしてみました。

2021年01月のTwitterトレンドにも入っていた「新年早々」という季節性あるワードで調べてみると、このように1月にきっちりとトレンドがでることが分かります。

新年早々のTwitterトレンド2年間推移をグラフとした画像
キーワード「新年早々」の24カ月トレンド推移

SixTONESがオールナイトニッポンで番組をやることが決まり、「#SixTONESANN」という番組ハッシュタグが決まった2020年3月以降のトレンド推移なんかは見ていて面白かったです。

#SixTONESANNのTwitterトレンド2年間推移をグラフとした画像
キーワード「#SixTONESANN」の24カ月トレンド推移

トレンドとなったキーワードは14万語以上あるので、ここでは紹介し尽くせないですが、2020年の「ツイータン」年間トレンドワードランキング1位となったトレンドワードの「#メンテの日なのでssを貼る」というハッシュタグでみるとこんな感じになりました。

キーワード「#メンテの日なのでssを貼る」の24カ月トレンド推移

Twitter APIからデータ収集し始めたのが2019年の9月のため、2019年のはじめのデータがなくて残念ですが、トレンドの推移がよく分かりました。

おわりに

24カ月推移グラフは、以前に楽天・ヤフーの検索キーワードランキングサイト「Keyword Tool++」を作った時に制作したグラフでしたが、これを「ツイータン」にも適用したら意外と面白いグラフができたという感じでした。

楽天・ヤフーの人気キーワードランキングサイト「Keyword Tool++」
Keyword Tool+で使っていた24カ月グラフでした

グラフは毎度おなじみのChart.jsを使って生成しています。

24カ月推移グラフの作成方法は、こちらの記事でご紹介しています。宜しければ合わせてご確認下さい。

毎10分毎にAPIに接続してデータ集信をかけておりましたが、2年近く一度もコケルことなくデータ収集ができておりましたので、Twitter APIがとても安定したサービスというのがよく分かりました。無料で利用可能なAPIなので、ぜひ皆さんもお試し下さい。

ABOUT dtn.jp

この運営ブログをみてdtn.jpの運営サイトに興味をお持ちになった方は下記のリンク集からサイトをご参照ください。PHP・SQL・JS・HTML・CSSや様々なAPIでゼロから立ち上げたサイトを複数運営しています。

dtn.jp関連サイト

  • ディレクトリ型検索エンジンdtn大手サイトは全てサービスを終了し、中小でも運営を継続するところがほとんどなくなってしまったディレクトリ型検索エンジンを2002年から細々運営しており、未だに細かい機能改修も行っております。申請されたサイトは実際に訪問して細かく確認をしているので登録までかなりお時間いただきます。
  • 猫ネコサーチエンジン猫・ペットサイト専用のディレクトリ型検索エンジンです。登録サイトはサイトのスクリーンショット付きでカテゴリに掲載しています。
  • 画像掲示板の泉画像やYouTubeやニコニコ動画が貼り付け可能な匿名画像掲示板です。27ジャンルに分かれた掲示板に、それぞれ100スレッドまで立てることが可能です。
  • ツイータンTwitter APIを使って10分おきに収集したTwitter(ツイッター)のトレンドワードや人気ハッシュタグデータを月別に集計してランキング形式で公開しています。
  • Keyword Tool++Yahoo APIや楽天サイトのデータを日次で収集したデータを元に、EC系キーワードをラインキング形式でご紹介しています。各ワードは検索ボリュームや関連語、24か月の検索ボリュームトレンドを確認も可能です。
  • 消費者金融の泉カードローン商品を取り扱う金融業者を一覧で比較可能としたサイトです。カテゴリ別、人気度別、限度額別、金利別に比較可能なサイトにしています。
  • TrendinGファッションモールに出店するブランドをアイテムヒット率でランキングとしたサイトです。まだβ版です。

各サイトの開発方法などについて

各サイトの開発方法や運用トラブルについては、当ブログで不定期にご紹介しています。Twitterで新着記事のお知らせもしています。宜しければフォロー下さい。