Web Scrape Instagram to Get User Profiles with Google Apps Script
This example shows how to screen scrape the Instagram website to extract the profile information and statistics of any user on Instagram. You can get the user’s name, profile photos, follower count, friends count, website URL and other details with the script.
Instagram provides a secret URL that returns the profile of any user in JSON format. Web apps can connect to this URL to fetch profile details without requiring OAuth tokens or any other authorization. The URLs work for both public and private user profiles on Instagram.
function getInstagramStatistics(user) {
user = user || 'labnol';
var url = 'https://www.instagram.com/u/?__a=1';
var result = UrlFetchApp.fetch(url.replace('u', user), {
muteHttpExceptions: true,
});
if (result.getResponseCode() === 200) {
var json = JSON.parse(result.getContentText()).user;
var data = {
screen_name: json.username,
full_name: json.full_name,
is_private: json.is_private,
is_verified: json.is_verified,
profile_image: json.profile_pic_url,
website_url: json.external_url,
follower_count: json.followed_by.count,
friend_count: json.follows.count,
};
return data;
} else {
Logger.log('User not found');
return null;
}
}
Amit Agarwal
Google Developer Expert, Google Cloud Champion
Amit Agarwal is a Google Developer Expert in Google Workspace and Google Apps Script. He holds an engineering degree in Computer Science (I.I.T.) and is the first professional blogger in India.
Amit has developed several popular Google add-ons including Mail Merge for Gmail and Document Studio. Read more on Lifehacker and YourStory