Click here to Skip to main content
15,901,283 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
If I have want to scrape the number of views, number of likes and number of comments and shares from an instagram/facebook post? How do i scrape it in a csv file. also the scraper should run every 5 minutes.

What I have tried:

Yes, I have tried but its unable to fetch, anything that is there in span tag.
Posted

 
Share this answer
 
Comments
Madhur Sharma 2024 6-May-24 8:25am    
Here is my code:

import requests
from bs4 import BeautifulSoup

# URL of the post
url = 'https://www.instagram.com/p/C6eTih3LrFw/'

# Send a GET request to the URL
r = requests.get(url)

# Parse the HTML content
soup = BeautifulSoup(r.content, 'html.parser')

# Find the span tag with the class 'views'
views_span = soup.find('span', class_='x9f619 xjbqb8w x78zum5 x168nmei x13lgxp2 x5pf9jr xo71vjh xr1yuqi xkrivgy x4ii5y1 x1gryazu x1n2onr6 x1plvlek xryxfnj x1iyjqo2 x2lwn1j xeuugli xdt5ytf x1a02dak xqjyukv x1cy8zhl x1oa3qoh x1nhvcw1')

# If the span tag exists, extract the text
if views_span:
views = views_span.text.strip()
print('Number of views:', views)
else:
print('Views count not found')

This is unable to fetch the views. I guess I am doing something wrong while entering the correct class. Could you please let me know what class should I write from the inspect page of this instagram handle.
Richard MacCutchan 6-May-24 8:38am    
The problem with web scraping, is that nothing is guaranteed. You need to examine the raw HTML text that is returned to see exactly what fields are present in the text.
You may have better luck using the Facebook and Instagram API's instead of scraping.
https://developers.facebook.com/docs/graph-api/[^]
https://developers.facebook.com/docs/instagram/[^]
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900