Overview
SpiderPublicInstagram allows you to extract public profile data from Instagram without requiring login credentials. This is useful for:- Lead Enrichment: Add Instagram presence and contact info to existing leads
- Influencer Research: Build databases with verified follower counts and engagement metrics
- Contact Discovery: Extract business emails and phone numbers from profiles
- Brand Monitoring: Track competitor Instagram presence
No Login RequiredSpiderPublicInstagram uses Instagram’s public web API endpoint. It does not require Instagram login credentials, making it safe and compliant for public data extraction.
Quick Start
1. Submit a Profile Scraping Job
2. Check Job Status
3. Get Results
Input Formats
SpiderPublicInstagram accepts various input formats:What Data Can You Extract?
Profile Information
| Field | Description | Always Available |
|---|---|---|
username | Instagram handle | Yes |
full_name | Display name | Yes |
bio | Profile biography | Public profiles only |
external_url | Website link | If configured |
profile_pic_url | Profile image URL | Yes |
Engagement Metrics
| Field | Description |
|---|---|
follower_count | Number of followers |
following_count | Number following |
post_count | Total posts |
Account Type Flags
| Field | Description |
|---|---|
is_business_account | Business account |
is_professional_account | Creator/professional |
is_verified | Blue checkmark |
is_private | Private profile |
Business Information (Business Accounts Only)
| Field | Description |
|---|---|
business_category | Category (e.g., “Restaurant”) |
business_email | Contact email |
business_phone | Contact phone |
Extracted Contacts
| Field | Description |
|---|---|
bio_emails | Emails found in bio text |
bio_phones | Phone numbers found in bio text |
Contact Extraction
SpiderPublicInstagram extracts contact information from two sources:1. Business Profile Settings
Business accounts can configure contact information in their profile settings. This appears as:business_email: Official contact emailbusiness_phone: Official contact phone
2. Bio Text Parsing
Many users include contact information directly in their bio text. SpiderPublicInstagram uses regex patterns to extract:- Email addresses: Standard email format detection
- Phone numbers: US format, international format, and raw digits
Profile Image Hosting
Instagram CDN URLs can expire. SpiderPublicInstagram can upload profile images to SpiderMedia for permanent hosting:| URL Type | Pros | Cons |
|---|---|---|
profile_pic_url | Original quality | May expire |
profile_pic_url_hosted | Permanent, fast CDN | Stored in your quota |
Batch Processing
For processing multiple profiles, submit jobs in a loop:Combining with Other Workers
Instagram → SpiderSite Pipeline
Extract Instagram data, then scrape the linked website:Campaign Workflow Integration
SpiderPublicInstagram results can be enriched alongside SpiderMaps campaigns:- Run SpiderMaps campaign to discover businesses
- Extract Instagram URLs from business data
- Submit SpiderPublicInstagram jobs for each Instagram profile
- Merge results for comprehensive lead data
Rate Limits and Best Practices
Instagram Rate Limits
| Limit | Value |
|---|---|
| Requests per hour per IP | ~200 |
| Built-in delay | 3-10 seconds |
Best Practices
Use Mobile Proxies
Use Mobile Proxies
Instagram blocks datacenter IPs quickly. SpiderProxy mobile proxies are automatically assigned for production jobs, providing carrier-grade IP addresses.
Respect Rate Limits
Respect Rate Limits
Don’t submit more than 100-200 jobs per hour. The worker includes built-in delays, but submitting too many jobs can still trigger blocks.
Handle Private Profiles
Handle Private Profiles
Private profiles return limited data. Check
is_private: true in results and handle accordingly in your application.Use Hosted Images
Use Hosted Images
Always use
profile_pic_url_hosted for display in your application. Instagram CDN URLs can expire or be blocked.Error Handling
Common Errors
| Error | Cause | Solution |
|---|---|---|
| Profile not found | Username doesn’t exist | Verify username is correct |
| Rate limited | Too many requests | Wait and retry later |
| IP blocked | Datacenter IP detected | Use mobile proxy (automatic in production) |
