Instagram Profile Scraper
Pricing
$19.99/month + usage
Instagram Profile Scraper
Pricing
$19.99/month + usage
Rating
0.0
(0)
Developer
ScraperForge
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
A robust Apify Actor for scraping Instagram profile information including posts, followers, biography, and more. This actor extracts comprehensive profile data from public Instagram accounts with smart proxy management and real-time data saving.
Why Choose Us?
- Comprehensive Data Extraction: Get complete profile information including latest posts, follower counts, biography, external links, and related accounts
- Smart Proxy Management: Automatic fallback system (no proxy β datacenter β residential) ensures maximum reliability and success rates
- Real-Time Data Saving: Data is saved incrementally to the output table as each profile is scraped, so you never lose progress
- Bulk Processing: Process multiple profiles efficiently with built-in rate limiting (1-2 second delays between requests)
- Clean Progress Logging: See real-time progress and results without internal technical details cluttering the logs
- Production-Ready: Built with error handling, retry logic, and graceful failure management
Key Features
- β Profile Information: Username, full name, biography, follower/following counts, post count
- β Latest Posts: Extract up to 12 latest posts with images, captions, hashtags, mentions, and engagement metrics
- β Related Accounts: Get similar/related Instagram accounts
- β External Links: Extract all external URLs from profile bio
- β Account Metadata: Verification status, business account info, profile pictures (standard & HD)
- β IGTV Videos: Extract IGTV video information if available
- β Optional About Section: Extract date joined and country (slower, requires additional parsing)
- β Smart Proxy Fallback: Automatic proxy switching for maximum reliability
- β Real-Time Output: See results appear in the output table as they're scraped
Input
JSON Example
{"startUrls": ["https://www.instagram.com/humansofny/","https://www.instagram.com/username2/","username3"],"proxyConfiguration": {"useApifyProxy": false},"includeAboutSection": false}
Input Fields
-
startUrls (required): Array of Instagram profile URLs or usernames
- Accepts full URLs:
https://www.instagram.com/username/ - Accepts just usernames:
username - Supports bulk input: Add multiple profiles in the array
- π¬ For custom solutions or feature requests, contact us at dev.scraperengine@gmail.com
- Accepts full URLs:
-
proxyConfiguration (optional): Proxy settings
useApifyProxy: Set totrueto use Apify proxy (default:false- no proxy)- Smart Fallback System:
- By default, starts with no proxy (direct connection)
- If Instagram blocks/rejects β automatically falls back to datacenter proxy
- If datacenter is blocked β automatically falls back to residential proxy
- If residential fails β retries 3 times with residential proxy
- Once fallback occurs, sticks with residential proxy for all remaining requests
-
includeAboutSection (optional): Extract date joined and country
- Default:
false - Set to
trueto extract account creation date and country information - Note: Slower option that requires additional HTML parsing
- Default:
Output
Output Format
Data is saved in real-time to the Apify dataset. Each profile is saved as a separate item in the output table.
JSON Example
[{"inputUrl": "https://www.instagram.com/humansofny","id": "242598499","username": "humansofny","url": "https://www.instagram.com/humansofny","fullName": "Humans of New York","biography": "New York City, one story at a time. Created by Brandon Stanton...","externalUrls": [{"title": "Dear New York Book","lynx_url": "https://l.instagram.com/...","url": "https://bit.ly/dearnewyorkbook","link_type": "external"}],"externalUrl": "https://bit.ly/dearnewyorkbook","externalUrlShimmed": "https://l.instagram.com/...","followersCount": 12802590,"followsCount": 673,"postsCount": 5839,"verified": true,"isBusinessAccount": false,"private": false,"profilePicUrl": "https://instagram.fdac142-1.fna.fbcdn.net/...","profilePicUrlHD": "https://instagram.fdac142-1.fna.fbcdn.net/...","latestPosts": [{"id": "3742534382104984578","type": "Sidecar","shortCode": "DPwJzEVDbwC","caption": "A few years ago I received a DM...","hashtags": [],"mentions": ["zohrankmamdani"],"url": "https://www.instagram.com/p/DPwJzEVDbwC/","commentsCount": 3841,"likesCount": 254147,"timestamp": "2025-10-13T20:14:46Z","images": ["https://..."],"childPosts": [...]}],"relatedProfiles": [],"latestIgtvVideos": [],"igtvVideoCount": 0,"fbid": "17841401154973790"}]
Output Fields
Profile Information
- inputUrl: Original input URL or username
- id: Instagram user ID
- username: Instagram username
- url: Full Instagram profile URL
- fullName: Display name/full name
- biography: Profile bio text
- verified: Whether account is verified (boolean)
- isBusinessAccount: Whether it's a business account (boolean)
- private: Whether account is private (boolean)
- profilePicUrl: Standard profile picture URL
- profilePicUrlHD: High-definition profile picture URL
Statistics
- followersCount: Number of followers
- followsCount: Number of accounts following
- postsCount: Total number of posts
- igtvVideoCount: Number of IGTV videos
Links & External Data
- externalUrl: Main external URL from bio
- externalUrlShimmed: Instagram-shimmed external URL
- externalUrls: Array of all external links from bio with titles
Posts Data
- latestPosts: Array of latest 12 posts, each containing:
id,type(Image/Video/Sidecar),shortCode,captionhashtags,mentions,url,commentsCount,likesCounttimestamp,images,childPosts(for Sidecar posts)videoUrl,videoViewCount(for Video posts)taggedUsers,isPinned,isCommentsDisabled
Related Data
- relatedProfiles: Array of similar/related Instagram accounts
- latestIgtvVideos: Array of IGTV videos (if any)
Optional Fields (if includeAboutSection is true)
- dateJoined: Account creation date (ISO format)
- country: Country information (if available)
π How to Use the Actor
Via Apify Console
- Log in to https://console.apify.com and navigate to Actors
- Find your actor (
instagram-profile-scraper) and click it - Configure inputs:
- Add Instagram profile URLs or usernames in the
startUrlsfield - Optionally configure proxy settings (default: no proxy with automatic fallback)
- Toggle "Include About Section" if you need date joined and country info
- Add Instagram profile URLs or usernames in the
- Click Start to run the actor
- Monitor progress in real-time through the logs
- View results in the OUTPUT tab as they're scraped
- Export results to JSON, CSV, or other formats when complete
Input Format
The startUrls field accepts:
- Full URLs:
https://www.instagram.com/username/ - Just usernames:
username - Mix of both formats
Example:
https://www.instagram.com/humansofny/username2https://www.instagram.com/username3/
How It Works
- Initialization: Actor starts with no proxy (direct connection to Instagram)
- Profile Processing: For each profile:
- Extracts username from URL if needed
- Fetches Instagram headers and app ID
- Makes API request to get profile data
- Transforms data to standardized format
- Saves to output table immediately
- Proxy Fallback: If requests are blocked:
- Automatically switches to datacenter proxy
- If still blocked, switches to residential proxy
- Retries up to 3 times with residential if needed
- Real-Time Saving: Each profile is saved as soon as it's scraped
- Progress Tracking: Logs show progress and results in real-time
Best Use Cases
- Social Media Research: Analyze competitor profiles, engagement metrics, and content strategies
- Influencer Discovery: Find and analyze potential influencers for marketing campaigns
- Content Analysis: Study post patterns, hashtag usage, and content performance
- Market Research: Gather data on brand presence, audience demographics, and market trends
- Data Collection: Build comprehensive datasets for analysis, reporting, and business intelligence
- Account Monitoring: Track profile changes, follower growth, and engagement over time
Frequently Asked Questions
Q: Does this work with private accounts?
A: No, this actor only scrapes publicly available information from public Instagram profiles. Private accounts cannot be accessed.
Q: Will I get blocked by Instagram?
A: The actor includes smart proxy management and rate limiting (1-2 second delays) to minimize blocking. If requests are blocked, it automatically falls back through the proxy chain (datacenter β residential) to ensure maximum success rates.
Q: How many profiles can I scrape?
A: The actor can process multiple profiles efficiently. Rate limiting is built-in to avoid overwhelming Instagram's servers. There's no hard limit, but be mindful of Instagram's rate limits and terms of service.
Q: What if a profile fails to scrape?
A: The actor will log a warning and continue with the next profile. All successfully scraped data is saved incrementally, so you won't lose progress if some profiles fail.
Q: Can I scrape posts older than the latest 12?
A: Currently, the actor scrapes the latest 12 posts per profile. For historical posts beyond that, you would need Instagram's pagination API (not included in this actor).
Q: How does the proxy fallback work?
A: The actor starts with no proxy. If Instagram blocks the request, it automatically tries datacenter proxy. If that's blocked, it switches to residential proxy. Once a fallback occurs, it sticks with residential for all remaining requests to maintain consistency.
Q: Is the data saved in real-time?
A: Yes! Each profile is saved to the output table immediately after it's scraped. You can see results appearing in the OUTPUT tab as the actor runs.
Q: What's the difference between standard and HD profile pictures?
A: profilePicUrl is the standard resolution, while profilePicUrlHD provides a higher resolution version of the profile picture.
Support and Feedback
For issues, questions, custom solutions, or feature requests, please contact us at dev.scraperengine@gmail.com.
Cautions
- Data is collected only from publicly available sources
- No data is taken from private accounts or password-protected content
- The end user is responsible for ensuring legal compliance (spam laws, privacy, data protection, GDPR, etc.)
- Respect Instagram's Terms of Service and rate limits
- Use responsibly and ethically
- Do not use for spam, harassment, or any illegal activities
Technical Details
- Language: Python 3
- Framework: Apify SDK
- HTTP Client: aiohttp (async)
- Proxy Support: Apify Proxy with automatic fallback
- Data Storage: Apify Dataset (real-time incremental saving)
- Rate Limiting: 1-2 second delays between requests
- Retry Logic: 3 retries with exponential backoff
- Error Handling: Graceful failure with detailed logging
Version: 0.1
Last Updated: 2025
Actor Name: instagram-profile-scraper