Twitter API でフォロー数/フォロワー数を取得して Google スプレッドシートへ追記するサンプルコード – Google Apps Script (GAS) 編
Twitter API でフォロー数/フォロワー数を取得して Google スプレッドシートへ追記する Google Apps Script (GAS) のサンプルコードをご紹介します。
SocialDog を一ヶ月ほど使ってみたのですが、一部の機能しか使っておらず有料プランを解約しました。
自分の用途としては、Twitter アカウントのフォロワー数とフォロー数の日別の推移を追えるだけで充分だったので、Twitter API + GAS で Google スプレッドシートへ追記する処理を自前で実装しました。
Twitter API GET /2/users/by/username/:username を利用します。
const TWITTER_USERNAME = PropertiesService.getScriptProperties().getProperty('TWITTER_USERNAME');
const TWITTER_API_BEARER_TOKEN = PropertiesService.getScriptProperties().getProperty('TWITTER_API_BEARER_TOKEN');
const GOOGLE_SHEET_ID = PropertiesService.getScriptProperties().getProperty('GOOGLE_SHEET_ID');
function getTwitterPublicMetrics(){
const url = `https://api.twitter.com/2/users/by/username/${TWITTER_USERNAME}?user.fields=public_metrics`;
const options = {
method: 'get',
headers: {
authorization: `Bearer ${TWITTER_API_BEARER_TOKEN}`
}
};
const response = JSON.parse(UrlFetchApp.fetch(url, options));
const row = Object.values(response["data"]["public_metrics"]);
const today = Utilities.formatDate(new Date(), 'JST', 'yyyy-MM-dd');
row.unshift(today);
const sheetName = 'シート1';
const sheet = SpreadsheetApp.openById(GOOGLE_SHEET_ID).getSheetByName(sheetName);
sheet.appendRow(row);
}
1行目に以下を追記します。
スプレッドシートのメニュー [拡張機能] - [Apps Script] から新規作成して、上記のサンプルコードをペーストします。
毎日午後11時〜午前0時の間に1回定期実行されるようにトリガーを追加します。
以上、Twitter API + Google Apps Script でフォロー数/フォロワー数を取得して Google スプレッドシートへ追記した、現場からお送りしました。