ある人の発言
「任意のアカウントのいいねとRTを集めて、さらにフィルタできるアプリがあったらすごく情報収集が捗りそうですね。」
たしかに、気になったアカウントがあっても、どんな人気のツイートをしているかはすぐにフィードからなくなるので確かめにくいですよね。
アプリの前にとりあえずエクセルでやってみました。同じやり方でPowerBI などのBI でフィルタリングしたTweet データを表示したり、アプリで同じことを行うことができます。
#CData Excel Add-in について
CData Drivers にExcel のUI を付けた製品です。80以上(2017/12現在)のデータソースに対応しています。Twitter は人気データソースの一つです。Excel 画面からSQL すら書くことなくクラウドサービスのデータをExcel テーブルにロードが可能です。ロードしたデータをExcel 上で更新、削除も可能です。新しいデータの挿入も可能ですので、例えばTweets というテーブルに挿入すると、、、Twitter に新しいTweet をすることもできます。
よくあるケース:
庶民のBI
Salesforce などSaaS のデータクレンジングツール
Excel データのDB への移ツール行
SaaS 間の手動ETL ツール
この記事では、BI・アナリティクスに近い使い方であるツイート分析の為のデータ作成をしてみます。
#準備
-
CData Excel Add-in をダウンロードします。30日の無償トライアルが使えます。
http://www.cdata.com/jp/drivers/twitter/excel/ -
Twitter のアプリを作成します
API を使用する為にTwitter アプリを作る必要があります。- https://dev.twitter.com/apps にログインします。
- [Create New App]をクリックします。
- ユーザーが接続時に表示される[Name]、[Description]、[Website]を入力します。
- コールバックURL をhttp://127.0.0.1/ に設定します。
- アプリ作成後に[Keys and Access Tokens]のタブで[Consumer Key (API Key)]、[Consumer Secret (API Secret)]、[ Access Token]、[Access Token Secret]を確認して、後で使うので取っておきます。
#Twitter から特定アカウントでフィルタ、Tweets をRT数でソートしてExcel に取り込む
-
Twitter アプリとの接続を確立
http://cdn.cdata.com/help/GTB/xls/pg_connectingtotwitterxls.htm -
「Tweets」テーブルで取得したいアカウントのツイートを取得
とりあえず今回はアカウントを特定して、Retweet が多い順に100ツイートを取得します。
CData コンポーネントはWeb APIを直接叩かずに標準SQL で書けるのが素晴らしいです。
SELECT * FROM [Tweets] WHERE Screen_Name = 'Screen Name' ORDER BY Retweet_Count DESC LIMIT 100
Twitter API はリミット制限が結構厳しいのでリミットにヒットしたら、解除されるまで1時間待ちましょう。
なんだか、Twitter UI からは覗けないものを除いた感じで楽しいですね。