今回はTwitterのフォロワー数を自動で定期的にカウントするGASのコードを公開します。
機能はこんな感じ。
- 毎日 or 週毎 or 月毎でTwitterのフォロワー数をGoogleスプレッドシートに記録する
- 複数のアカウント対象
- Googleスプレッドシートでシートを指定する
ヘイショー
GASの走らせ方を知っていてコードをコピペすれば5分で作れます。
GASの走らせ方を知らない方は、以下の記事をご覧ください。
参考 GAS(Google App Script)のスクリプトを走らせる方法
完成した表はこんな感じです
GASのソースコード
Twitterの各アカウントのフォロワー数を数えるためのスクリプトはこちら。
コード
function TwitterFollowers() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
//Google Spreadsheetのシート名を記入
var sheet = spreadsheet.getSheetByName("★Google Sheetのシート名★");
var today = Utilities.formatDate(new Date(), "JST","yyyy/MM/dd")
var lastRow = sheet.getLastRow()
var row = lastRow + 1;
//★アカウント1~3★のところに自分のTwitter IDを入れる
var result1 = getTwitterNumFollowersJson("★アカウント1★");
var result2 = getTwitterNumFollowersJson("★アカウント2★");
var result3 = getTwitterNumFollowersJson("★アカウント3★");
//入力
sheet.getRange(row, 1).setValue(today);
sheet.getRange(row, 2).setValue(result1.followers_count);
sheet.getRange(row, 3).setValue(result2.followers_count);
sheet.getRange(row, 4).setValue(result3.followers_count);
}
function getTwitterNumFollowersJson(screenName) {
var baseURL = "https://cdn.syndication.twimg.com/widgets/followbutton/info.json?screen_names=";
var response = UrlFetchApp.fetch(baseURL + screenName);
var result = null;
if (response.getResponseCode() == 200) {
var text = response.getContentText("utf-8");
if (text != "") {
var data = JSON.parse(text);
if (data.length == 1) {
result = data[0];
}
}
}
return result;
}
function getNumFollowers(screenName) {
var result = getTwitterNumFollowersJson(screenName);
if (result) {
return result.followers_count;
} else {
return 0; // Not Found;
}
}
定期的にスクリプトを走らせるためのトリガーを設定
スクリプトを毎週自動で走らせるために、トリガーを設定します。
- Extentions → Apps Script
- 左のサイドバーから「Triggers」を選択
- 右下の「+ Add Trigger」をクリック
- ポップアップで「TwitterFollowers」「Head」「Time-driven」「Week timer」「曜日を選択」「時間を選択」を選択して、最後に「Save」をクリックすれば完了です。
まとめ
以上、お役に立てれば幸いです。
ヘイショー
ご精読ありがとうございました!