Instagram, one of the popular social media platforms, has become a mainstay for individuals and businesses. The social network features several important tools for organizations that want to visualize and create immersive experiences for their audience.
With over 2 billion accounts, these audiences provide companies with valuable information that might be beneficial. However, gathering information from Instagram can challenging owing to the platform’s structure and privacy policies.
Crawlbase Crawling API is a ready-made solution to scrape Instagram data without going through any legal or privacy issues. This article will explore how you can scrape Instagram data with Python seamlessly with our Crawling API.

Table of Contents:

Why is Instagram Scraper Useful?

Instagram, with its billions of active users, is not just a platform for sharing moments and stories—it’s a vast repository of insightful data. Businesses, researchers, and individuals who tap into this data source find a wealth of benefits. Here are the pivotal reasons why Instagram data scraping is an essential tool across diverse sectors.

  1. Market Research: It allows businesses to gain insights into their target audience’s preferences, behaviors, and interestsincluding their Instagram followers. Companies can better understand market trends and customer sentiments by scraping data from Instagram profiles, posts, and comments. If you’re about to develop a new logo maker or work on its new version, let’s say, you can interpret Instagram analytics and design it according to user interaction data. The latter can help you create a more responsive and user-friendly device.
  2. Competitor Analysis: Instagram scraping lets you learn your competitors’ activities through their profiles and post analysis. Studying this information will help you gain insights on what to adopt in your strategy.
  3. Influencer Marketing: You can also learn how your counterparts approach influencer marketing. You can also scrape Instagram influencer profiles to know their level of engagement and relevance in your industry before hiring them.
  4. Content Strategy: Learning new tactics from your competitors could help you improve your content strategy. You can get inspiration through content ideas, improve post engagement and help your team personalize your content to your audience preferences.
  5. Social Media Analytics: Scraping Instagram data provides individuals and businesses with a comprehensive view of their social media performance. Metrics such as follower growth, post reach, and engagement rates can be tracked and analyzed to optimize social media strategies.
  6. User Engagement: You can leverage the power of Instagram users to learn about their preferences, interests and behaviour. Scraping user activity like comments and likes enables you to know these metrics.
  7. Lead Generation: SEO marketers are conversant with the importance of acquiring leads from social media. Scraping Instagram data can gain information on your ideal customers on the platform.
  8. Content Personalization: After gaining these insights, you can tailor your content to meets their specific needs, which might eventually draw them closer your brand and eventually become customers.
  9. Trend Analysis: Social platforms live and breather virality and trends. You can scrape Instragram data to extract data on trends which can be beneficial to your business growth.
  10. Academic Research: Data is relevant for research and Instagram has a lot of it. Scraping the platform can give researchers the needed information for their hypothesis and experiments.
Instagram data scraping uses

Scrape Instagram with Crawlbase Crawling API

Step 1: Register for Crawlbase and obtain your private token. You can get this token by accessing the account documentation section within your Crawlbase account.

Step 2: Install the Crawlbase Python library. In order to install it, please follow these steps:

  • First, confirm whether Python is installed on your system. If it’s not installed, you can download and install it from the official Python Website.
  • Once Python is installed, open your command prompt or terminal.
  • To install the Crawlbase Python library, use pip (Python package installer) by running the following command:

pip install crawlbase

  • Wait for Pip to download and install the library. It will also install any necessary dependencies.

Step 3: Select the Instagram profile page you wish to scrape. In this context, we have opted for the Apple Instagram profile page. Choosing a profile page like this is important because it provides a wide range of content elements, demonstrating how adaptable and versatile the scraping process can be.

Apple Instagram profile page

Step 4: Create a Python file named instagram-page-scraper.py using the following command:

touch instagram-page-scraper.py

This command will create an empty Python script file named instagram-page-scraper.py in your current directory. You can then open and edit this file to write your Python code for scraping Instagram pages.

Step 5: Configure the Crawlbase Crawling API by specifying the required parameters and endpoints to enable the API to operate correctly. Copy the provided script into the instagram-page-scraper.py file that you created in step 4. To execute the following script, use this command python instagram-page-scraper.py in the terminal:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
from crawlbase import CrawlingAPI

# Set your Crawlbase token
crawlbase_token = 'YOUR_CRAWLBASE_TOKEN'

# URL of the Instagram page to scrape
instagram_page_url = 'https://www.instagram.com/apple/'

# Create a Crawlbase API instance with your token
api = CrawlingAPI({ 'token': crawlbase_token })

try: # Send a GET request to crawl the URL
response = api.get(instagram_page_url)

# Check if the response status code is 200 (OK)
if 'status_code' in response:
if response['status_code'] == 200:
# Print the response body
print(response['body'])
else:
print(f"Request failed with status code: {response['status_code']}")
else:
print("Response does not contain a status code.")

except Exception as e: # Handle any exceptions or errors
print(f"An error occurred: {str(e)}")

The above script demonstrates how to utilize Crawlbase’s Crawling API for accessing and extracting data from an Instagram page. This is accomplished by setting up the API token, defining the target URL, and initiating a GET request. Upon running this code, you will receive the raw HTML content of the specified Instagram page, which will be displayed in the console, as shown below:

Apple Instagram profile HTML response

Scrape Instagram Data with Crawlbase

In the earlier example, we explored how to retrieve the fundamental structure of an Instagram page, which essentially provides us with the HTML of the page. However, there are occasions when we don’t need this raw data. Instead, our interest lies in extracting particular and significant information from the page. Fortunately, Crawlbase’s Crawling API comes equipped with built-in Instagram scrapers referred to as instagram-post, instagram-profile, and instagram-hashtag. These scrapers are designed to assist us in extracting valuable content, and we will discuss each of them individually.

Crawlbase “instagram-post” Scraper

To enable this functionality when using the Crawling API in Python, it’s crucial to include a “scraper” parameter with the value instagram-post in your code. This parameter facilitates the extraction of relevant page content in JSON format. The modifications will be made to the existing file, “instagram-page-scraper.py”. Let’s take a look at the following example for a clearer understanding:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
from crawlbase import CrawlingAPI

# Set your Crawlbase token
crawlbase_token = 'YOUR_CRAWLBASE_TOKEN'

# URL of the Instagram post to scrape
instagram_post_url = 'https://www.instagram.com/p/B5LQhLiFFCX'

# Options for Crawling API
options = {
'scraper': 'instagram-post',
}

# Create a Crawlbase API instance with your token
api = CrawlingAPI({ 'token': crawlbase_token })

try: # Send a GET request to crawl the URL with options
response = api.get(instagram_post_url, options=options)

# Check if the response status code is 200 (OK)
if response.get('statusCode', 0) == 200:
# Parse the JSON response and print it
response_body_json = response.get('body', {})
print(response_body_json)
else:
print(f"Request failed with status code: {response.get('statusCode', 0)}")

except Exception as e: # Handle any exceptions or errors
print(f"API request error: {str(e)}")

The Python code above uses Crawlbase’s Crawling API to extract data from a particular Instagram post page. It starts by defining the target URL of the Instagram post page and configuring the scraping options with the instagram-post scraper. Subsequently, a GET request is initiated to access the URL. Upon receiving a successful response with a status code of 200, the code parses the retrieved data and displays it in JSON format on the console.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
{
"postedBy": {
"accountName": "apple",
"accountUserName": "apple",
"accountLink": "https://www.instagram.com/apple/"
},
"postLocation": {
"locationName": "Cheonan, Korea",
"link": "https://www.instagram.com/explore/locations/236722267/cheonan-korea/"
},
"caption": {
"text": "“Nature can be a designer.” #landscapephotography #ShotoniPhone by Chang D. @hello*dongwon",
"tags": [
{
"hashtag": "#landscapephotography",
"link": "https://www.instagram.com/explore/tags/landscapephotography/"
},
{
"hashtag": "#ShotoniPhone",
"link": "https://www.instagram.com/explore/tags/shotoniphone/"
},
{
"accountUserName": "@hello_dongwon",
"link": "https://www.instagram.com/hello_dongwon/"
}
]
},
"media": {
"images": [
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/p1080x1080/74483667_176621576856831_5638323409997236915_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&;_nc_cat=103&_nc_ohc=oIc2iP5MKD0AX9Jxs0r&oh=728c8878e963134633bf7f58f95fb5c5&oe=5F0CA467"
],
"videos": []
},
"taggedAccounts": [],
"likesCount": 373174,
"viewsCount": 0,
"dateTime": "2019-11-22T17:21:42.000Z",
"repliesCount": 12,
"replies": [
{
"accountUserName": "lixiao927",
"accountLink": "https://www.instagram.com/lixiao927/",
"text": "太尼玛好看了吧",
"likesCount": 0,
"dateTime": "2020-03-26T05:48:15.000Z"
},
{
"accountUserName": "tanmoy8440",
"accountLink": "https://www.instagram.com/tanmoy8440/",
"text": "Nice pic",
"likesCount": 0,
"dateTime": "2020-04-03T19:42:18.000Z"
},
{
"accountUserName": "lexikarongkong",
"accountLink": "https://www.instagram.com/lexikarongkong/",
"text": "Like Samsung Galaxy S20 Ultra camera",
"likesCount": 1,
"dateTime": "2020-04-04T13:37:39.000Z"
},
{
"accountUserName": "naisouzas",
"accountLink": "https://www.instagram.com/naisouzas/",
"text": "parece uma pintura",
"likesCount": 0,
"dateTime": "2020-04-07T01:37:57.000Z"
},
{
"accountUserName": "hj_od597",
"accountLink": "https://www.instagram.com/hj_od597/",
"text": "@juhee__15 오겁나 외국같이생겼다 했는데 밑에 비상구라 써짐ㅋㅋㅋㅋㅋㅋ",
"likesCount": 0,
"dateTime": "2020-04-09T00:12:15.000Z"
},
{
"accountUserName": "jbskiee378",
"accountLink": "https://www.instagram.com/jbskiee378/",
"text": "Can you give me an iphone x pls @apple why are your products so expensive can you maybe give discounts to students with your price???????????",
"likesCount": 0,
"dateTime": "2020-04-13T07:19:55.000Z"
},
{
"accountUserName": "reroalanazi",
"accountLink": "https://www.instagram.com/reroalanazi/",
"text": "Great picture, but if it was taken with #Samsung #Galaxy S20 Ultra lens, it would be more beautiful. ♥️",
"likesCount": 0,
"dateTime": "2020-04-19T20:18:42.000Z"
},
{
"accountUserName": "mario_shutter1",
"accountLink": "https://www.instagram.com/mario_shutter1/",
"text": "A designer",
"likesCount": 0,
"dateTime": "2020-04-27T13:08:27.000Z"
},
{
"accountUserName": "dostmealone",
"accountLink": "https://www.instagram.com/dostmealone/",
"text": "🤮",
"likesCount": 0,
"dateTime": "2020-05-03T13:23:31.000Z"
},
{
"accountUserName": "excellsior_x",
"accountLink": "https://www.instagram.com/excellsior_x/",
"text": "@apple28k*",
"likesCount": 0,
"dateTime": "2020-05-07T04:59:11.000Z"
},
{
"accountUserName": "annapaulaaah",
"accountLink": "https://www.instagram.com/annapaulaaah/",
"text": "Eu quero um iPhone",
"likesCount": 0,
"dateTime": "2020-05-11T19:45:36.000Z"
},
{
"accountUserName": "arieneisa0810",
"accountLink": "https://www.instagram.com/arieneisa0810/",
"text": "😍",
"likesCount": 0,
"dateTime": "2020-05-29T02:20:19.000Z"
}
]
}

Crawlbase “instagram-profile” Scraper

In this example, we’ll be focusing on extracting data from an Instagram profile page, specifically the URL https://www.instagram.com/apple/. Crawlbase’s Crawling API includes a specialized scraper tailored for Instagram profile pages, which makes the extraction of important information from these pages straightforward. To accomplish this, you’ll need to adjust the “scraper” parameter in the provided Python code, switching it from instagram-post to instagram-profile. Below is an example to clarify this modification and help you grasp the process more easily:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
from crawlbase import CrawlingAPI

# Set your Crawlbase token
crawlbase_token = 'YOUR_CRAWLBASE_TOKEN'

# URL of the Instagram profile to scrape
instagram_profile_url = 'https://www.instagram.com/apple/'

# Options for Crawling API
options = {
'scraper': 'instagram-profile',
}

# Create a Crawlbase API instance with your token
api = CrawlingAPI({ 'token': crawlbase_token })

try: # Send a GET request to crawl the URL with options
response = api.get(instagram_profile_url, options=options)

# Check if the response status code is 200 (OK)
if response.get('statusCode', 0) == 200:
# Parse the JSON response and print it
response_body_json = response.get('body', {})
print(response_body_json)
else:
print(f"Request failed with status code: {response.get('statusCode', 0)}")

except Exception as e: # Handle any exceptions or errors
print(f"API request error: {str(e)}")

JSON Response:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
{
"username": "apple",
"verified": true,
"postsCount": {
"value": "645",
"text": "645"
},
"followersCount": {
"value": "23,226,349",
"text": "23.2m"
},
"followingCount": {
"value": "6",
"text": "6"
},
"picture": "https://scontent-ams4-1.cdninstagram.com/v/t51.2885-19/s150x150/20635165_1942203892713915_5464937638928580608_a.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_ohc=lcE_RCkZ_V0AX88YnQ-&oh=61a7f414a083262a6a3a267c72712d7e&oe=5ECF0664",
"name": "apple",
"bio": {
"text": "Everyone has a story to tell. Tag #ShotoniPhone to take part.",
"tags": [
{
"hashtag": "#ShotoniPhone",
"link": "https://www.instagram.com/explore/tags/shotoniphone/"
}
]
},
"openStories": [
{
"image": "https://scontent-amt2-1.cdninstagram.com/v/t51.12442-15/e35/c45.528.1152.1152a/s150x150/89355871_2612402225710092_3475237627656449116_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=100&_nc_ohc=l-ZJug3llnAAX81ac9M&oh=560c36b6bd08b2836271e77daca9c136&oe=5EA5EB70",
"text": "Hermitage 🎨's profile picture"
},
{
"image": "https://scontent-ams4-1.cdninstagram.com/v/t51.12442-15/e35/c30.352.768.768a/s150x150/82179545_827696967671926_8787817111555610935_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=_wHOpjhVeXkAX_hEKdc&oh=b7d8db9aed851dbfccd9df4f49f94780&oe=5EA65BC6",
"text": "🐌💗's profile picture"
},
{
"image": "https://scontent-ams4-1.cdninstagram.com/v/t51.12442-15/e15/c26.306.667.667a/s150x150/76876296_2550913171857183_128215401869222325_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=103&_nc_ohc=Rpbq12v0NKcAX-RpFK-&oh=c33a7715317b3e7ad3ccc683c12d6446&oe=5EA6766A",
"text": "💧+💡's profile picture"
},
{
"image": "https://scontent-ams4-1.cdninstagram.com/v/t51.12442-15/e35/c37.435.949.949a/s150x150/75580662_537509090168097_4020885592126699575_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=109&_nc_ohc=qzEjW6UBISoAX_I7gQz&oh=ac6278fe93277ccac21b5f46f1f55f9b&oe=5EA66382",
"text": "Year in Review's profile picture"
},
{
"image": "https://scontent-ams4-1.cdninstagram.com/v/t51.12442-15/e35/c30.352.768.768a/s150x150/72484738_746166185869011_2854931396367331804_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=103&_nc_ohc=TkYeayoAfVwAX-_p9vt&oh=506ceaad1801cdd780f074a534f5560e&oe=5EA5FCC9",
"text": "Amazigh Art's profile picture"
},
{
"image": "https://scontent-ams4-1.cdninstagram.com/v/t51.12442-15/e35/c30.352.768.768a/s150x150/75629745_203840840646467_1028107524492424399_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=111&_nc_ohc=FCGYL9q0NS4AX-pABQZ&oh=db4c4c5a46d7b1e44465ef13b970d15b&oe=5EA66374",
"text": "Lake Chad's profile picture"
},
{
"image": "https://scontent-amt2-1.cdninstagram.com/v/t51.12442-15/e35/c30.352.768.768a/s150x150/72598591_490861721522737_1631333478359405579_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=101&_nc_ohc=UEDftmksjuoAX_okqKB&oh=bca099e93450243a43e3b9e1856d836e&oe=5EA67DFC",
"text": "Gaucha 🐎's profile picture"
},
{
"image": "https://scontent-amt2-1.cdninstagram.com/v/t51.12442-15/e35/c30.352.768.768a/s150x150/71320503_574809409935193_1862692088555636172_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=101&_nc_ohc=sRSAfRJT6q4AX8j8Arp&oh=424876dcdbbbb191bfb57966a48f8df7&oe=5EA65EF7",
"text": "Berlin ☮️'s profile picture"
},
{
"image": "https://scontent-amt2-1.cdninstagram.com/v/t51.12442-15/e35/c30.352.768.768a/s150x150/75252641_2469511756436035_2732997290614957157_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=107&_nc_ohc=8SXHPxPVpuQAX-eWZwL&oh=26050310662d1f6e15512dd61715dda0&oe=5EA63130",
"text": "⚾️'s profile picture"
},
{
"image": "https://scontent-amt2-1.cdninstagram.com/v/t51.12442-15/e35/c30.352.768.768a/s150x150/73398050_101756347887937_5197053380786476217_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=101&_nc_ohc=VahfCymvDKcAX-tDviP&oh=3477c066aa1c552cc4e7476fe9951379&oe=5EA6877D",
"text": "Indian Relay's profile picture"
},
{
"image": "https://scontent-amt2-1.cdninstagram.com/v/t51.12442-15/e35/c30.352.768.768a/s150x150/69275532_179485926551741_6507592363859849347_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=105&_nc_ohc=Bh4voI0AYSsAX-MaenG&oh=d7e3b1e081ec88b66cb1599177bc6521&oe=5EA66F18",
"text": "Biosphere2 🌎's profile picture"
},
{
"image": "https://scontent-ams4-1.cdninstagram.com/v/t51.12442-15/e35/c33.340.768.768a/s150x150/69193245_541142776629778_1447685455316918382_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=110&_nc_ohc=tHA-uBL1TvcAX8i5m9F&oh=f80230be3683aa57e81262c442824574&oe=5EA5EC74",
"text": "Bonneville🧂🚘's profile picture"
}
],
"posts": [
{
"link": "https://www.instagram.com/p/B_XxvQvlsGe/",
"image": "https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/sh0.08/e35/c0.180.1440.1440a/s640x640/94347557_2642896465946523_7616332183822673338_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=KxQBdzP0DyYAX_9c81u&oh=97e0116f3109fce547a15a11ddab0447&oe=5ECD0478",
"imageData": "Photo by apple on April 24, 2020. Image may contain: one or more people, sky, cloud and outdoor",
"images": [
"https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/e35/c0.180.1440.1440a/s150x150/94347557_2642896465946523_7616332183822673338_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=KxQBdzP0DyYAX_9c81u&oh=6e49d368b2c316cc27ed9c6495e13c9c&oe=5ECF6548",
"150w,https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/e35/c0.180.1440.1440a/s240x240/94347557_2642896465946523_7616332183822673338_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=KxQBdzP0DyYAX_9c81u&oh=1f51010c75b41d12b9944b60a125381b&oe=5ECEEFC2",
"240w,https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/e35/c0.180.1440.1440a/s320x320/94347557_2642896465946523_7616332183822673338_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=KxQBdzP0DyYAX_9c81u&oh=1da35bddf453501e9aa6f119ea9cc3d6&oe=5ECC7740",
"320w,https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/e35/c0.180.1440.1440a/s480x480/94347557_2642896465946523_7616332183822673338_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=KxQBdzP0DyYAX_9c81u&oh=c6f96946ec16399ff05aa66a51c5b251&oe=5ECB92F9",
"480w,https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/sh0.08/e35/c0.180.1440.1440a/s640x640/94347557_2642896465946523_7616332183822673338_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=KxQBdzP0DyYAX_9c81u&oh=97e0116f3109fce547a15a11ddab0447&oe=5ECD0478",
"640w"
]
},
{
"link": "https://www.instagram.com/p/B9mQWorlh5K/",
"image": "https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/sh0.08/e35/c0.180.1440.1440a/s640x640/89475596_1075731759466811_2351671729121046109_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=2ufLVB-w6AoAX_VsRyx&oh=1b3f702494fa1d0abba71b08d3231ccf&oe=5ECEDFB2",
"imageData": "Photo by apple on March 11, 2020. Image may contain: skyscraper, sky and outdoor",
"images": [
"https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/e35/c0.180.1440.1440a/s150x150/89475596_1075731759466811_2351671729121046109_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=2ufLVB-w6AoAX_VsRyx&oh=eb7bcb99461044d704f7065a6e9f5ae8&oe=5ECF5A02",
"150w,https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/e35/c0.180.1440.1440a/s240x240/89475596_1075731759466811_2351671729121046109_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=2ufLVB-w6AoAX_VsRyx&oh=fa08a359404e0caf766fe658d957d2d6&oe=5ECC7D08",
"240w,https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/e35/c0.180.1440.1440a/s320x320/89475596_1075731759466811_2351671729121046109_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=2ufLVB-w6AoAX_VsRyx&oh=2e648fff1129f47877163b9d462c9ce9&oe=5ECDEF7A",
"320w,https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/e35/c0.180.1440.1440a/s480x480/89475596_1075731759466811_2351671729121046109_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=2ufLVB-w6AoAX_VsRyx&oh=4cb6dee670cc0064a0812fc5760bab35&oe=5ECE2BBF",
"480w,https://scontent-ams4-1.cdninstagram.com/v/t51.2885-15/sh0.08/e35/c0.180.1440.1440a/s640x640/89475596_1075731759466811_2351671729121046109_n.jpg?_nc_ht=scontent-ams4-1.cdninstagram.com&_nc_cat=1&_nc_ohc=2ufLVB-w6AoAX_VsRyx&oh=1b3f702494fa1d0abba71b08d3231ccf&oe=5ECEDFB2",
"640w"
]
},
{
"link": "https://www.instagram.com/p/B9ex0TSlMCg/",
"image": "https://scontent-amt2-1.cdninstagram.com/v/t51.2885-15/sh0.08/e35/c0.342.1236.1236a/s640x640/87611430_2959850554038353_1847999869221037422_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=105&_nc_ohc=LjsOfeejEHIAX8Gb2aj&oh=3880da040bc6b01f0e6598babf173f66&oe=5EA62785",
"imageData": "Commissioned by Apple. Photographer Petecia Le Fawnhawk @Lefawnhawk is known for creating striking surrealist landscapes using a mix of sculpture and editing techniques. Watch to learn about Petecia's creative connection with the desert and how she uses perspective to explore her sense of place in the world. #IWD #ShotoniPhone 11 Pro.",
"images": [
"https://scontent-amt2-1.cdninstagram.com/v/t51.2885-15/e35/p150x150/87611430_2959850554038353_1847999869221037422_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=105&_nc_ohc=LjsOfeejEHIAX8Gb2aj&oh=9e479bd5dec698a155ef65696b19bf4f&oe=5EA65AC4",
"150w,https://scontent-amt2-1.cdninstagram.com/v/t51.2885-15/e35/p240x240/87611430_2959850554038353_1847999869221037422_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=105&_nc_ohc=LjsOfeejEHIAX8Gb2aj&oh=25e819e0e6cc83696fb7a2231d543c5f&oe=5EA60F06",
"240w,https://scontent-amt2-1.cdninstagram.com/v/t51.2885-15/e35/p320x320/87611430_2959850554038353_1847999869221037422_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=105&_nc_ohc=LjsOfeejEHIAX8Gb2aj&oh=6bacf87f04dddb72c4be45fd286a4fdf&oe=5EA5EDFC",
"320w,https://scontent-amt2-1.cdninstagram.com/v/t51.2885-15/e35/p480x480/87611430_2959850554038353_1847999869221037422_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=105&_nc_ohc=LjsOfeejEHIAX8Gb2aj&oh=7f7822d462f1d8057f55db0f1c4d8413&oe=5EA671FD",
"480w,https://scontent-amt2-1.cdninstagram.com/v/t51.2885-15/sh0.08/e35/p640x640/87611430_2959850554038353_1847999869221037422_n.jpg?_nc_ht=scontent-amt2-1.cdninstagram.com&_nc_cat=105&_nc_ohc=LjsOfeejEHIAX8Gb2aj&oh=c44e200acc057978a7e8b7f9d69951cd&oe=5EA676C7",
"640w"
]
}
],
"igtvs": [
{
"link": "https://www.instagram.com/tv/B9ex0TSlMCg/",
"image": "https://scontent-hel2-1.cdninstagram.com/v/t51.2885-15/e35/p1080x1080/87611430_2959850554038353_1847999869221037422_n.jpg?_nc_ht=scontent-hel2-1.cdninstagram.com&_nc_cat=105&_nc_ohc=LjsOfeejEHIAX_EkiaS&oh=2c50756e50e4fe2bb4f226d8843b0e64&oe=5EA68E44",
"caption": "Shifting Perspectives",
"duration": "1:44"
},
{
"link": "https://www.instagram.com/tv/B84GQDlF_w8/",
"image": "https://scontent-hel2-1.cdninstagram.com/v/t51.2885-15/e35/85025635_192470508692931_652833229817579830_n.jpg?_nc_ht=scontent-hel2-1.cdninstagram.com&_nc_cat=1&_nc_ohc=REfGNQCCkWUAX-VM8Cr&oh=7ccf83c46324e3da814da68a83445345&oe=5EA66F02",
"caption": "Valley of Fire",
"duration": "1:47"
}
]
}

Crawlbase “instagram-hashtag” Scraper

In this example, our goal is to extract data from an Instagram hashtag page, precisely from the URL https://www.instagram.com/explore/tags/love/. Crawlbase’s Crawling API offers a specialized scraper designed for Instagram hashtag pages, making it easier to gather important information from these pages. To achieve this, you should modify the “scraper” parameter in the provided Python code by setting its value to instagram-hashtag. Below is an example that illustrates this change, making the process more understandable:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
from crawlbase import CrawlingAPI

# Set your Crawlbase token
crawlbase_token = 'YOUR_CRAWLBASE_TOKEN'

# URL of the Instagram hashtag page to scrape
instagram_hashtag_url = 'https://www.instagram.com/explore/tags/love/'

# Options for Crawling API
options = {
'scraper': 'instagram-hashtag',
}

# Create a Crawlbase API instance with your token
api = CrawlingAPI({ 'token': crawlbase_token })

try: # Send a GET request to crawl the URL with options
response = api.get(instagram_hashtag_url, options=options)

# Check if the response status code is 200 (OK)
if response.get('statusCode', 0) == 200:
# Parse the JSON response and print it
response_body_json = response.get('body', {})
print(response_body_json)
else:
print(f"Request failed with status code: {response.get('statusCode', 0)}")

except Exception as e: # Handle any exceptions or errors
print(f"API request error: {str(e)}")

JSON Response:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
{
"hashtag": "#love",
"postsCount": 1922533116,
"picture": "https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/s150x150/120246611_370598574112098_9059520366968441717_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=106&_nc_ohc=R-6kKmhfuBMAX83OgWd&_nc_tp=15&oh=153a7cc8b65ebe5e6e9e61d983bc56af&oe=5F9D1E75",
"openStories": [
{
"image": "https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/s150x150/120246611_370598574112098_9059520366968441717_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=106&_nc_ohc=R-6kKmhfuBMAX83OgWd&_nc_tp=15&oh=153a7cc8b65ebe5e6e9e61d983bc56af&oe=5F9D1E75",
"text": ""
}
],
"posts": [
{
"link": "https://www.instagram.com/p/CFr2LTkDGAL",
"id": 2408256697191391000,
"shortcode": "CFr2LTkDGAL",
"image": "https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/p1080x1080/120203930_765572937337282_8075299313306189359_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=kL7cL2KiBN4AX_NYjVH&_nc_tp=19&oh=90b2d2e4132aeae51b365fc19aed877b&oe=5F9C1051",
"caption": "Serious.\nLingerie @incantoofficial 👙\n-\n-\n-\n#fitness #gym #workout #fit #fitnessmotivation #motivation #bodybuilding #training #health #love #lifestyle #fitfam #instagood #sport #healthylifestyle #healthy #crossfit #gymlife #personaltrainer #follow #exercise #instagram #like #muscle #weightloss #life #fitnessmodel #gymmotivation #fashion #bhfyp",
"imageData": "Photo shared by A L I C E O R R Ù on September 28, 2020 tagging @incantoofficial. Image may contain: 1 person, closeup.",
"images": [
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/c0.156.1440.1440a/s150x150/120203930_765572937337282_8075299313306189359_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=kL7cL2KiBN4AX_NYjVH&_nc_tp=16&oh=2cc026bc4c80afa790da8963a4e5d29c&oe=5F99BF4B",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/c0.156.1440.1440a/s240x240/120203930_765572937337282_8075299313306189359_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=kL7cL2KiBN4AX_NYjVH&_nc_tp=16&oh=f0190a3d7886bf26d8cf364d08205cfc&oe=5F9CDC4D",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/c0.156.1440.1440a/s320x320/120203930_765572937337282_8075299313306189359_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=kL7cL2KiBN4AX_NYjVH&_nc_tp=16&oh=9aedc25e6054c9a0e70cbb1f1f7b81fe&oe=5F9B8FB3",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/c0.156.1440.1440a/s480x480/120203930_765572937337282_8075299313306189359_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=kL7cL2KiBN4AX_NYjVH&_nc_tp=16&oh=6b20088f6ba92cc64ae94b4d231aa125&oe=5F9BB5F6",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/sh0.08/e35/c0.156.1440.1440a/s640x640/120203930_765572937337282_8075299313306189359_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=kL7cL2KiBN4AX_NYjVH&oh=78dff09d1276b9a5ab713b2fdea342ca&oe=5F9D6B7B"
],
"commentCount": 20,
"likeCount": 633,
"previewCount": 633,
"owner": {
"id": "263510071"
},
"takenAt": "2020-09-28T15:23:11.000+00:00",
"isVideo": false
},
{
"link": "https://www.instagram.com/p/CBkWvL5BYhz",
"id": 2334090506491234300,
"shortcode": "CBkWvL5BYhz",
"image": "https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/104132652_564752484400882_961350199636081290_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=WHvCFqed1wgAX-Mzb7F&_nc_tp=18&oh=81fb128b21e96e4ef4214e1afe60c395&oe=5F9BC995",
"caption": "𝐉𝐮𝐬𝐭 𝐚 𝐭𝐢𝐫𝐞𝐝 𝐬𝐨𝐮𝐥 𝐰𝐢𝐭𝐡 𝐬𝐨𝐦𝐞 𝐚𝐜𝐭𝐢𝐯𝐞 𝐭𝐡𝐢𝐧𝐤𝐢𝐧𝐠! 🐾🔥\n.\n.\n#captionplus #travel #nature #outdoors #photography #photooftheday #winter #landscape #trekking #mountains #camping #love #forest #naturelovers #beautiful #sunset #sun #adventure #naturephotography #sky #explore # #outdoor #hiking #snow #mountain #wanderlust #sea",
"imageData": "Photo by 𝐏𝐎𝐎𝐇𝐑𝐀𝐕𝐕 𝐍𝐄𝐆𝐈 🦄 in BRUH. Image may contain: 1 person, closeup.",
"images": [
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/s150x150/104132652_564752484400882_961350199636081290_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=WHvCFqed1wgAX-Mzb7F&_nc_tp=15&oh=8bedd624b0de89f73545d637d0d1a1c1&oe=5F9D27D7",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/s240x240/104132652_564752484400882_961350199636081290_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=WHvCFqed1wgAX-Mzb7F&_nc_tp=15&oh=b794838e9b4fe5ea80a4064c16bd68ad&oe=5F99C21D",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/s320x320/104132652_564752484400882_961350199636081290_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=WHvCFqed1wgAX-Mzb7F&_nc_tp=15&oh=dd30cd55554d1ccd748fcdce7798aaec&oe=5F9AC027",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/s480x480/104132652_564752484400882_961350199636081290_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=WHvCFqed1wgAX-Mzb7F&_nc_tp=15&oh=b1a857e926e5954c3499ea11ff05e4fc&oe=5F9CE07D",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/sh0.08/e35/s640x640/104132652_564752484400882_961350199636081290_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=110&_nc_ohc=WHvCFqed1wgAX-Mzb7F&oh=664518fb766b403dc6730286ab4d9045&oe=5F9CE5F2"
],
"commentCount": 22,
"likeCount": 301,
"previewCount": 301,
"owner": {
"id": "8305592364"
},
"takenAt": "2020-06-18T07:28:12.000+00:00",
"isVideo": false
},
{
"link": "https://www.instagram.com/p/Bi-gtzJlA6N",
"id": 1783006387271634700,
"shortcode": "Bi-gtzJlA6N",
"image": "https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/31890427_1239149812887528_4372281762504507392_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=100&_nc_ohc=aySdF8l2m1EAX-8cHl_&_nc_tp=18&oh=bf38e0776301d7ce67a38d3d34629b6b&oe=5F99F9D4",
"caption": "The Earth is our Turf. \nBest Yoga prop 💯\nDhurvaYoga.com",
"imageData": "Photo by Dhurva Yoga® in Hard Rock Hotel San Diego with @hardrocksd, @fitathletic, @partynakedsd, @pointlomasportsclub, @supersofie86, @floatpoolclub, and @sunburnpool. Image may contain: 2 people.",
"images": [
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/c215.0.650.650a/s150x150/31890427_1239149812887528_4372281762504507392_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=100&_nc_ohc=aySdF8l2m1EAX-8cHl_&_nc_tp=16&oh=8c13d5e2d2fa44b74c2a86a7b00f3c49&oe=5F9A0FC8",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/c215.0.650.650a/s240x240/31890427_1239149812887528_4372281762504507392_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=100&_nc_ohc=aySdF8l2m1EAX-8cHl_&_nc_tp=16&oh=85007b413309462dfbf2072c7c489ed4&oe=5F9AB3C2",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/c215.0.650.650a/s320x320/31890427_1239149812887528_4372281762504507392_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=100&_nc_ohc=aySdF8l2m1EAX-8cHl_&_nc_tp=16&oh=34cf919addc6189a51a6d0540d1675fc&oe=5F9A6640",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/e35/c215.0.650.650a/s480x480/31890427_1239149812887528_4372281762504507392_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=100&_nc_ohc=aySdF8l2m1EAX-8cHl_&_nc_tp=16&oh=d44bac8fc2936b387c2fce9639345c8d&oe=5F9C7379",
"https://instagram.fccu1-1.fna.fbcdn.net/v/t51.2885-15/sh0.08/e35/c215.0.650.650a/s640x640/31890427_1239149812887528_4372281762504507392_n.jpg?_nc_ht=instagram.fccu1-1.fna.fbcdn.net&_nc_cat=100&_nc_ohc=aySdF8l2m1EAX-8cHl_&oh=de802bc56258d23ba321200bdd1a91fa&oe=5F9AFB01"
],
"commentCount": 8,
"likeCount": 178,
"previewCount": 178,
"owner": {
"id": "21731675"
},
"takenAt": "2018-05-19T23:02:26.000+00:00",
"isVideo": false
}
]
}

How to Overcome Challenges of Scraping Instagram

In the world of web scraping, platforms like Instagram have implemented anti-scraping measures to protect user data and maintain the integrity of their service. Instagram’s vast user base and the wealth of data it holds make it an attractive target for web scrapers. However, scraping data from Instagram comes with challenges due to these protective mechanisms.

Instagram’s Anti-Scraping Mechanisms

  1. Rate Limiting: Instagram employs rate limiting to restrict user requests within a specific time frame. If you exceed these limits, Instagram may temporarily block your access or permanently ban your account or IP address.
  2. CAPTCHA: Like most notable sites and apps, Instagram uses a CAPTCHA feature to verify if a user is human. This verification might appears at different touchpoints while logging on or browsing the application.
  3. Dynamic Content: Instagram has a dynamic page structure, which is frequently updated making it worrisome for scraping.
  4. Session Cookies: The social media giant uses cookies to track user activity and monitors changes in behaviour pattern. The platform regularly flags alerts based on sudden change in browser behaviour.
  5. User-Agent Checks: Instagram may scrutinize the user-agent string sent by the scraper in the HTTP headers. Unusual or suspicious user-agent strings can lead to detection.

Strategies to Avoid Detection When Scraping Instagram

Instagram has rightly placed high-level security measures to safeguard the platform against security threats. But these measures can create a debacle for web scrapers. Here are some of the ways to avoid getting blocked when scraping data on Instagram:

  1. Use Proxies: You can deploy a scraper with rotating IP addresses and proxy servers to avoid being detected. Instead of using a single IP address, these proxies distribute requests across multiple IPs to reduce the chances of rate limiting or IP getting blocked.
  2. Randomize User Agents: You can pick a user-agent string at random to mimic different users, reducing the chances of Instagram detecting your activity.
  3. Session Management: Ensure you pick a web scraper that maintains a consistent user session, which results in blocks by Instagram.
  4. Limit Request Frequency: You must create intervals between your requests to mimic natural browsing behaviour to avoid being flagged as an automated bot.
  5. User Behavior Simulation: Replicate typical user behaviour by scrolling through pages, clicking on posts, and interacting with the site as a human user would.
  6. Avoid Peak Hours: Scraping during off-peak hours reduces the chances of encountering rate limits or CAPTCHAs, as Instagram’s servers are less congested.
  7. Respect Robots.txt: Check Instagram’s robots.txt file, which outlines scraping guidelines. Adhering to these guidelines avoids scraping issues and ensures ethical scraping practices.
  8. Use Headless Browsers: Headless browsers like Selenium can render JavaScript and provide a more authentic browsing experience, reducing the likelihood of detection.

While these strategies can enhance your chances of avoiding detection, it’s crucial to emphasize that scraping Instagram data should always be done ethically and in compliance with Instagram’s terms of service and legal regulations. Responsible scraping practices contribute to a positive online presence and mitigate legal risks.

Use Crawlbase to Scrape Instagram Data Efficiently

Instagram remains one of the best sources for data collection with different types of audiences to pick from. However, you need a reliable web scraper that will not be flagged by the platform’s plenty of security measures. Crawlbase Crawling API crawls mobile apps like Instagram intelligently, removing every form of barrier. You can depend on its smooth process and control to leverage your business data.
In addition, you would not need to worry about legal or data privacy issues, as our API already abides by different regulations. All you need to do is sign up and start scraping seamlessly.

Frequently Asked Questions(FAQ)

What is Instagram Scraper?

An Instagram scraper is a software tool or program that extracts data from Instagram’s platform. It automates collecting information from Instagram profiles, posts, comments, and other public content. Instagram scrapers use web scraping techniques to access and retrieve data, including images, text, user profiles, hashtags, and engagement metrics.

Scraping Instagram is legal if you avoid violating copyright and data protection laws. This means you should avoid scraping intellectual property or private information. It is permissible to scrape only publicly accessible data, such as images, comments, and metrics like the number of likes and followers. However, it is crucial to avoid gathering personal information, such as contact details, during scraping.

Instagram scraping presents ethical concerns about user consent, data usage, and compliance with Instagram’s terms of service. Respecting users’ privacy, obtaining consent when collecting personal data, and employing responsible scraping practices are crucial.

Legally, scraping may infringe on copyrights, breach data protection laws, and violate Instagram’s terms, potentially leading to legal actions or account suspension. To navigate these issues, practitioners must prioritize transparency, responsible data use, and compliance with relevant laws and regulations while acknowledging the ethical implications of their actions.

What types of data can be scraped from Instagram?

A wide variety of data can be scraped from Instagram, including:

  1. User Profiles: Information about users, such as their username, bio, follower count, and posts.
  2. Posts: Text, images, and videos from users’ posts, including captions, hashtags, and engagement metrics (likes, comments, shares).
  3. Comments: Comments made on posts, including the commenter’s username, text, and timestamps.
  4. Likes and Dislikes: Data on the number of likes and dislikes (if public) on posts and videos.
  5. Followers and Following: Lists of users who follow a particular account and those whom the account follows.
  6. Hashtags: Information related to hashtags used in posts, including the number of times they’ve been used.
  7. Location Data: Geographical information associated with posts, such as the location where a photo was taken.
  8. User Stories: Content shared in the Stories feature, including images and videos.
  9. Profile Analytics: Engagement data, such as the number of likes, comments, and follower growth trends over time.
  10. Publicly Available Contact Information: Contact details that users have chosen to make public, such as email addresses or website links.

It’s important to note that while some of this data is publicly accessible, scraping should always be done in compliance with Instagram’s terms of service and legal regulations, respecting user privacy and ethical considerations.

What are some practical use cases for scraped Instagram data?

Scraped Instagram data can be applied to a wide range of practical use cases, providing valuable insights and information for various purposes. Some practical use cases for scraped Instagram data include:

  1. Social Media Marketing: Analyzing user engagement, popular hashtags, and content trends to optimize social media marketing strategies.
  2. Influencer Marketing: Identifying potential influencers, tracking their engagement rates, and assessing their suitability for collaboration.
  3. Competitor Analysis: Monitoring competitors’ social media activities, content performance, and follower growth to gain a competitive edge.
  4. Market Research: Gathering data on customer preferences, opinions, and trends related to specific products or services.
  5. Trend Analysis: Identifying emerging trends, viral content, and popular topics within specific niches or industries.