Skip to content

Instantly share code, notes, and snippets.

@dkbast
Created April 16, 2018 18:49
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dkbast/175c1aa8301464c411bfde01331ef0dc to your computer and use it in GitHub Desktop.
Save dkbast/175c1aa8301464c411bfde01331ef0dc to your computer and use it in GitHub Desktop.
//https://stackoverflow.com/questions/49812575/instagram-a-1-not-working-anymore
//https://medium.com/@nickboyce/how-to-track-your-instagram-followers-over-time-with-google-sheets-scripts-bd9f5acf5ede
// the name of the sheet within your document
var sheetName = "FollowerCount";
// the name of the Instagram account you want to track
var instagramAccountName = "ACCOUNTNAMEYOUWANTTOTRACK";
function insertFollowerCount() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName(this.sheetName);
accountdata = getInstagramData(this.instagramAccountName);
sheet.appendRow([Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd"), accountdata.followerCount, accountdata.followCount, accountdata.mediaCount]);
};
function getInstagramData(username) {
var r = new RegExp('<script type="text\/javascript">' +
'([^{]+?({.*profile_pic_url.*})[^}]+?)' +
'<\/script>');
var url = "https://www.instagram.com/" + username
var source = UrlFetchApp.fetch(url).getContentText();
var jsonStr = source.match(r)[2];
var data = JSON.parse(jsonStr);
console.log('data', data);
var oldVariantOfData = data['entry_data']['ProfilePage'][0];
console.log('oldVariantOfData', oldVariantOfData);
return {
followerCount : oldVariantOfData.graphql.user.edge_followed_by.count,
followCount : oldVariantOfData.graphql.user.edge_follow.count,
mediaCount : oldVariantOfData.graphql.user.edge_owner_to_timeline_media.count
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment