Twitter分析システムをリリースしました!~TwitterAPIで出来ること~
システム統括課のブログ担当です。
今回は、先月トレンドにもなっていたTwitterAPIに関する記事を取り上げます。
弊社では昨年からTwitterAPIを利用し、データ収集や分析を行っております。
関連記事①:自作のTwitter分析システムで「ポケレジェ」のユーザ感情分析をする
関連記事②:スプラトゥーン3の感情分析をしてみた!
上記記事で紹介したツールを改修し、昨年11月に弊社グループ会社のSNS運用をサポートするWEBサイトをリリースしました。こちらのサイトでは、指定された時間帯のフォロワー数を確認したり、フォロワー数の増減の推移を調べたりできます。
また、一日おきにフォロー解除されたユーザーもチェックできるようになっており、さらにそのユーザーが凍結や一時停止になっていないかも確認できます。
これらのページで必要な情報は、TwitterAPIを用いてデータを取得しています。
今回は、これらの機能をどのように実現したのか、そして機能実現の際に利用したTwitterAPIでできることについてお話ししようと思います。
そもそもAPIってなに?
APIはアプリケーションプログラミングインターフェイスの略で、さまざまなプログラムやアプリ間で連携を実現するための仕組みです。主にシステム開発者が利用し、自分が開発しているシステムに他のシステムの機能を組み込む際に用います。
例えば、自分で作成したシステムがあるタスクを完了した際に、社内で使われているチャットツールに「完了しました」という報告をさせたい場合、チャットツールがAPIを提供していれば、指定された情報をAPIに送信することでメッセージ送信を代行してくれます。
身近なサービスでも多くのAPIが提供されており、さまざまな機能を利用することができます。
以下に例を挙げています。
・YouTube API:動画の検索、アップロード、編集やプレイリスト管理などが可能です。
・LINE Messaging API:ボットからメッセージの送受信をすることができます。
・Spotify API:楽曲の取得やアーティスト情報等に加え、楽曲のBPM、踊りやすさ、アコースティック度などの情報も取得できます。
Twitter APIでは以下のような機能をAPI経由で実行・取得できます。
・ツイートの投稿、リツイート、特定ユーザーのフォローやフォロー解除などの機能の実行
・特定ユーザーのフォロー・フォロワー、お気に入り情報などの取得
これらのAPIを利用することで、システム開発者は他のサービスの機能を簡単に自分のシステムに組み込んだり、データのやり取りを効率化してサービスをより良いものにしています。
TwitterAPI×プログラムで出来ること
実際にTwitterAPIで提供されている機能を用いて、実装ができなそうなシステムを考えてみました。
①自動フォローバック機能
まず、Twitter APIを利用して、自分のフォローとフォロワーの一覧リストを取得します。
次にプログラムを用いて、フォロワーリストに存在するがフォローリストに含まれていないユーザーを抽出します。最後に、この抽出したユーザーを対象にしてフォローを実行するようAPIに情報を送信しすると、対象ユーザーにフォローが実行が実行されます。
こちらの機能を定期的に実行することでフォロワーに対しての自動フォローバックが実現できます。
②新規フォロワーと離脱フォロワーの取得
こちらは今回リリースしたサービスで実際に実装した機能になります。
今回のシステムでは対象アカウントのフォロワー情報を毎日取得しています。
そのため、特定の期間のフォロワー一覧と現在のフォロワー一覧を比較することが可能です。
なので自動フォローバックと同様の手法を用いて、
ある時期にはフォロワーにいたが、現在はいなくなっているアカウントを抽出すれば、該当するユーザーは離脱フォロワーと判断することができ、 また、ある時期にはフォロワーにいなかったが、現在はフォロワーに存在するアカウントを抽出すれば、該当するユーザーを新規フォロワーと判断できます。
新規、離脱フォロワーの判断が出来るようになったので、あとはこちらに該当するユーザーをwebページで表示したり、CSVファイルでダウンロードできるようなどにするなどの方法で該当ユーザーを確認できるようになります。
TwitterAPIは3月から有償化してしまいました
この記事を読んでTwitterAPIを試してみたいと思った方もいるかもしれませんが、
残念ながら3月末にAPIの有償化と仕様変更が発表され、従来の機能に制限がかかりました。
現在TwitterAPIの無償版ではできることが大幅に減ってしまっており、
今回の記事で紹介した機能は有償版でないと利用が出来なくなってしまっています。
有償化によりTwitterAPIの導入ハードルは上がってしまいましたが、
有償化によってサービスが向上し、今後新たな機能が追加される可能性もあります。
個人的には、下記のような情報がAPIを利用して取得できるようになると様々な分析が可能になって面白いかなと思っています!
・ユーザーのTwitter利用頻度
・ユーザーのツイートの喜怒哀楽の割合(感情分析の結果)
・ユーザーが関心を持っているコンテンツの傾向
現在、Twitterのサービス自体が大きく改革されていっているので
TwitterAPIも今後より良いアップデートが実施されて
様々なアイデアが実現できるようになってくれるといいなぁという願望を書いて
この記事を締めさせていただきます。