スプレッドシートに反映されません

82 views
Skip to first unread message

T

unread,
Mar 3, 2023, 5:13:49 PM3/3/23
to Google Apps API Japan
自分のインスタのフォロワーの推移が、スプレッドシートに毎日自動更新されて、表示されるツールを作ろうと思い、以下のような条件でコードを作成したのですが、

Exception: Request failed for https://www.instagram.com returned code 429
コード.gs:9
というエラーメッセージが出てしまいます。

ユーザーネームの部分は正しいのを入れているのですが、全く反映されません。

どなたかご教授をお願いいたします。
条件 ・スクリプトを使用 ・B9以下に、1ヶ月間の日付を表示 ・C9以下に、その日のフォロワー数を表示 ・D9以下に、前日からの増加数を表示 ・C4に現在のフォロワー数を表示する ・APIは不使用
・ライブラリはCheerioを使用
コードは下記の通りです。

function updateFollowers() {
var username = "neo_mote";
var url = "https://www.instagram.com/" + username;
var sheet = SpreadsheetApp.getActiveSheet();
var dataRange = sheet.getRange("B9:D39");
var changeCountRange = sheet.getRange("D9:D39");
var followerCounts = dataRange.getValues();
var changeCounts = changeCountRange.getValues();
var response = UrlFetchApp.fetch(url);
var html = response.getContentText();
var $ = Cheerio.load(html);
var followerCount = parseInt($('meta[name="description"]').attr('content').split("Followers")[0].trim().replace(/,/g, ""));
var date = new Date();
sheet.getRange("C4").setValue(followerCount);
for (var i = 0; i < followerCounts.length; i++) {
var previousCount = followerCounts[i][0];
if (previousCount == "") {
followerCounts[i][0] = followerCount;
sheet.getRange(i+9, 2).setValue(date);
sheet.getRange(i+9, 3).setValue(followerCount);
break;
}
}
for (var j = 0; j < changeCounts.length; j++) {
var previousCount = followerCounts[j][0];
if (previousCount == "") {
break;
}
if (j == changeCounts.length - 1) {
changeCounts.shift();
changeCounts.push([followerCount - followerCounts[0][0]]);
followerCounts.shift();
followerCounts.push([followerCount]);
sheet.getRange("B9:D39").setValues(followerCounts);
sheet.getRange("D9:D39").setValues(changeCounts);
sheet.getRange("B9:B9").activate();
break;
} else {
var changeCount = followerCount - previousCount;
changeCounts[j][0] = changeCount;
}
}
changeCountRange.setValues(changeCounts);
}


Reply all
Reply to author
Forward
0 new messages