【GAS】Instagram Graph APIを利用して投稿毎のいいね数を取得する
こんにちわ、さかぐち(@sakaguchi_mamii)です。
我が家ではハムスターを飼っています。
Instagramで我が子自慢をしているのですが、どの投稿が反応がいいのか管理したくなる!
とはいえ、投稿毎に「いいね」を確認するのは手間なので、GASとInstagram Graph APIを利用して自動でスプレットシートに記録してきます。
Instagram Graph APIを実行する準備
Instagram Graph APIには以下の手順が必要です。
- Instagramをプロアカウントに切り替え
- Facebookページ作成
- 1つ目のアカウントトークン取得
- 2つ目のアカウントトークン取得
- 3つ目のアカウントトークン取得
- API実行
大変でした!笑
以下のページで丁寧に解説してありますので、参照ください。
Instagram Graph APIとGAS(Google Apps Script)を使ってインスタグラムのフォロワー数を自動的に日々記録する
スプレットシート作成
取得したデータ記録用にスプレットシートを準備します。(シート名:投稿別)
※スクリプト内でシート名を指定し記録処理を実行します。
スクリプト
IGメディアオブジェクトのメタデータを取得します。(リファレンス)
GET /{ig-media-id}?fields={fields}
function myFunction() {
var instragramID = 'InstagramのビジネスアカウントID';
var ACCESS_TOKEN = "3つ目のアクセストークン";
var num = 100; // 取得件数
var facebook_url = 'https://graph.facebook.com/v7.0/' + instragramID + '?fields=media.limit(' + num + '){timestamp,like_count,media_type,permalink}&access_token=' + ACCESS_TOKEN;
var encodedURI = encodeURI(facebook_url);
var response = UrlFetchApp.fetch(encodedURI);
var jsonData = JSON.parse(response);
// スプレットシート読み込み
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('投稿別');
var sheet_row = 2; // スプレットシートの開始行(2行目から)
// 取得したデータの分だけくり返し
for(var i=0; i<jsonData['media']['data'].length; i++){
var timestamp = jsonData['media']['data'][i]['timestamp']; // 投稿日時
var like_count = jsonData['media']['data'][i]['like_count']; // いいね数
var media_type = jsonData['media']['data'][i]['media_type']; // メディア種別
var permalink = jsonData['media']['data'][i]['permalink']; // リンク
sheet.getRange(sheet_row,1).setValue(Utilities.formatDate(new Date(timestamp), 'Asia/Tokyo','yyyy/MM/dd HH:mm:ss'));
sheet.getRange(sheet_row,2).setValue(like_count);
sheet.getRange(sheet_row,3).setValue(media_type);
sheet.getRange(sheet_row,4).setValue(permalink);
sheet_row++;
}
}
timestamp,like_count,media_type,permalink
部分に指定できるパラメータは以下を参照ください。
テスト
赤枠のリンクをクリックし、いいね数があってることを確認しました。
最後に
Instagramは最近始めたばかりなので、今回取得した結果を分析し「いい感じに」運用していこうと思います。
※投稿内容は所属組織とは一切関係ありません。
Author And Source
この問題について(【GAS】Instagram Graph APIを利用して投稿毎のいいね数を取得する), 我々は、より多くの情報をここで見つけました https://qiita.com/sakaguchi_mami/items/16013b614bc655a742fb著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .