Facebook Ads Scraper Pro
Pricing
from $0.40 / 1,000 successful ad scrapeds
Facebook Ads Scraper Pro
Extract Facebook Ad Library data: creatives, targeting & metrics. $0.40 = 1,000 Successful Ad scrapeds * cheaper & more complete. ๐ฑ
Pricing
from $0.40 / 1,000 successful ad scrapeds
Rating
4.9
(19)
Developer

FlowExtract API
Actor stats
54
Bookmarked
631
Total users
71
Monthly active users
4.1 hours
Issues response
12 hours ago
Last modified
Categories
Share
๐ Facebook Ads Scraper Pro - Ad Library Intelligence
Extract comprehensive data from Facebook's Ad Library with real-time streaming, advanced filtering, and standby mode support.
Search Keywords & Advertisers & URLs โ Stream Real-Time Ad Data โ Get Complete Analytics
๐ฌ Video Tutorial
๐ฅ Coming soon: A step-by-step video walkthrough showing how to use this actor including URL mode, keyword search, advertiser search, standby mode, and more.
๐ Pricing Tiers - Choose Your Plan
FREE TIER โ
Get started with no upfront cost
Included:
- โ Full access to Facebook Ad Library data
- โ Multi-language & multi-country filtering
- โ Real-time batch pushing (results appear as they're collected)
- โ Complete media asset extraction (images & videos)
- โ All filtering options (date ranges, platforms, categories)
Trade-offs:
- โ ๏ธ Shared proxy infrastructure
- โ ๏ธ Occasional connection interruptions
- โ ๏ธ Best for small to medium projects (< 500 ads)
PAID TIER โญ RECOMMENDED FOR PRODUCTION
Upgrade for enterprise-grade reliability
All Free Tier features PLUS:
- ๐ Dedicated premium proxy - Your own reliable connection
- ๐ No rate limiting - Unlimited continuous scraping
- ๐ 90% success rate - Stable, uninterrupted operations
- ๐ Extract โ+ ads per query - No slowdowns or blocks
- ๐ Perfect for production use - Enterprise-ready infrastructure
- ๐ Consistent performance - No random connection errors
Why upgrade?
- Avoid interruptions: Your dedicated proxy won't hit Facebook's rate limits
- Reliability: No HTTP errors or temporary blocks
- Scale effortlessly: Handle large datasets with perfect stability
- Best for agencies: Reliable results for client reports and production systems
- Zero downtime: 24/7 stable scraping without worries
๐ Feature Comparison
| Feature | FREE | PAID โญ |
|---|---|---|
| Ads per query | Up to 100 | โ+ |
| Rate limiting | Yes | No |
| Connection stability | Occasional issues | Always stable |
| Best for | Testing & small projects | Agencies & production |
| Support | Standard | Priority |
๐ Quick Start
Option 1: Run as Batch Job (One-Time Execution)
Perfect for: One-off scraping tasks, scheduled runs, offline processing
$apify call dz-omar/facebook-ads-scraper-pro --input input.json
Input format (input.json):
{"searchQueries": ["nike", "adidas"],"searchAdvertisers": ["15087023444"],"maxResultsPerQuery": 50,"countries": ["US"],"activeStatus": "ACTIVE","mediaType": "IMAGE"}
Process Flow:
- Actor starts
- Processes your request
- Returns results
- Actor stops
Option 2: Run with Ad Library URLs (New in v0.2) ๐
Perfect for: Copying searches directly from Facebook's Ad Library website, or fetching a specific ad by ID
{"URLAds": [{"url": "https://www.facebook.com/ads/library/?active_status=active&ad_type=all&country=US&q=nike&media_type=video"},{"url": "https://www.facebook.com/ads/library/?active_status=active&ad_type=all&country=ALL&q=adidas"}],"maxResultsPerQuery": 50}
How URL Mode works:
- Go to Facebook Ad Library and set up your search
- Copy the URL from your browser
- Paste it into the
URLAdsfield - All filters from the URL (country, language, date range, media type, platforms, sort order) are extracted automatically
- The actor parses each URL and runs the search for you
๐ Single ad links supported:
URLs with ?id= fetch that specific ad directly no search query needed:
{"URLAds": [{ "url": "https://www.facebook.com/ads/library/?id=907653308384731" }],"enrichWithAdDetails": true}
Combining URL Mode with Manual Search:
You can provide URLs alongside keyword and advertiser searches all run sequentially:
{"URLAds": [{ "url": "https://www.facebook.com/ads/library/?active_status=active&ad_type=all&country=ALL&q=pokemon&media_type=video" }],"searchQueries": ["apify"],"searchAdvertisers": ["Nike", "15087023444"],"maxResultsPerQuery": 50,"activeStatus": "ALL","adType": "ALL"}
Execution order:
- ๐ All
URLAdsare processed first (each URL uses its own filters from the URL) - ๐ข Then
searchAdvertisersare resolved and scraped (using the input schema filters) - ๐ Then
searchQueriesare run as keyword searches (using the input schema filters)
maxResultsPerQuery controls the maximum ads collected per URL, per advertiser page, and per keyword query.
Option 3: Run in Standby Mode (Recommended) โญ
Perfect for: Real-time applications, multiple requests, APIs, instant responses
# Actor automatically runs in standby mode# Access via: https://dz-omar--facebook-ads-scraper-pro.apify.actor
Standby Mode Advantages:
| Feature | Batch Mode | Standby Mode |
|---|---|---|
| Cold Start | 8-15 seconds | 0 seconds โก |
| Response Time | Slow (start overhead) | Instant |
| Best For | Scheduled tasks | Real-time apps |
| Concurrent Requests | Sequential | Parallel โ |
| Always Running | No | Yes (pre-warmed) |
| Cost | Lower | Higher (always on) |
| Ideal Use | Nightly scrapes | Live dashboards |
Real-World Comparison:
| Scenario | Batch Mode | Standby Mode |
|---|---|---|
| Track competitor ads daily | โ Good | โญ Excellent |
| Build a SaaS dashboard | โ ๏ธ Too slow | โ Perfect |
| One-time research project | โ Best | Overkill |
| API for other apps | โ Not viable | โ Ideal |
| Monitor 50 keywords live | โ No | โ Yes |
Example: Why Standby Mode is Better for Real-Time Dashboards
Imagine you're building a competitor monitoring dashboard that updates live:
Without Standby (Batch Mode):
User clicks "Refresh"โWait 10 seconds for cold startโWait 30 seconds for resultsโ40 seconds total โ (User closes browser)
With Standby Mode:
User clicks "Refresh"โResults instantly (pre-warmed)โ2 seconds total โ (User stays engaged)
๐ก API Endpoints
POST / - Custom Scraping with Real-Time Streaming
Send search parameters and receive ad data in real-time NDJSON stream.
Full Example:
curl -X POST https://dz-omar--facebook-ads-scraper-pro.apify.actor \-H "Content-Type: application/json" \-d '{"searchQueries": ["nike", "adidas"],"searchAdvertisers": ["Nike Football", "15087023444"],"maxResultsPerQuery": 100,"countries": ["US"],"contentLanguages": ["en"],"activeStatus": "ACTIVE","adType": "ALL","mediaType": "IMAGE","publisherPlatforms": ["FACEBOOK", "INSTAGRAM"],"sortBy": "SORT_BY_TOTAL_IMPRESSIONS","startDate": "2024-01-01","endDate": "2025-01-31"}'
Minimal Example:
curl -X POST https://dz-omar--facebook-ads-scraper-pro.apify.actor \-H "Content-Type: application/json" \-d '{"searchQueries": ["nike"]}'
Advertiser-Only Search:
curl -X POST https://dz-omar--facebook-ads-scraper-pro.apify.actor \-H "Content-Type: application/json" \-d '{"searchAdvertisers": ["Nike"], "maxResultsPerQuery": 200}'
Save Results to File:
curl -X POST https://dz-omar--facebook-ads-scraper-pro.apify.actor \-H "Content-Type: application/json" \-d '{"searchQueries": ["nike"]}' \> results.ndjson
๐ Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
URLAds | array | [] | Facebook Ad Library URLs to scrape directly (new in v0.2) |
searchQueries | array | [] | Keywords to search (e.g., ["nike", "adidas"]) |
searchAdvertisers | array | [] | Advertiser names or page IDs |
maxResultsPerQuery | integer | 10 | Max ads per URL / per query / per advertiser page |
batchSize | integer | 30 | Ads per batch request |
countries | array/string | ["ALL"] | Country codes (e.g., ["US", "GB", "FR"]) |
contentLanguages | array | [] | Language codes (e.g., ["en", "es", "fr"]) |
activeStatus | string | "ALL" | "ALL", "ACTIVE", "INACTIVE" |
adType | string | "ALL" | Ad category filter |
mediaType | string | "ALL" | Media type filter |
publisherPlatforms | array | [] | Platforms to search |
sortBy | string | "SORT_BY_TOTAL_IMPRESSIONS" | Sort method |
startDate | string | null | Start date (YYYY-MM-DD) |
endDate | string | null | End date (YYYY-MM-DD) |
enrichWithAdDetails | boolean | false | Fetch full ad details per result (advertiser info, targeting, payer/beneficiary, violations) |
โ ๏ธ Important: Input Requirements
At least one of these MUST be provided:
URLAds- Contains Facebook Ad Library URLssearchQueries- Contains search keywordssearchAdvertisers- Contains advertiser names/page IDs
You can provide any combination all are processed sequentially.
Invalid Input Examples (Will Fail):
{"maxResultsPerQuery": 50}
โ Error: "No input provided. Supply either URLAds, searchQueries, or searchAdvertisers"
{"searchQueries": [],"searchAdvertisers": []}
โ Error: "Both arrays are empty - no search criteria provided"
Valid Input Examples:
{"URLAds": [{ "url": "https://www.facebook.com/ads/library/?q=nike&country=US" }]}
โ Valid - Parses the URL and runs the search
{"searchQueries": ["nike"]}
โ Valid - Uses all defaults, searches for "nike"
{"searchAdvertisers": ["15087023444"]}
โ Valid - Searches all ads from page ID
{"URLAds": [{ "url": "https://www.facebook.com/ads/library/?q=pokemon&media_type=video" }],"searchQueries": ["marketing"],"searchAdvertisers": ["Nike", "Apple"],"maxResultsPerQuery": 100,"countries": ["US"]}
โ Valid - Runs URL first, then advertisers, then keywords
๐ Enriching Results with Ad Details
By default, each result contains the core ad data. Enable enrichWithAdDetails to fetch a richer detail page per ad:
{"searchQueries": ["nike"],"maxResultsPerQuery": 50,"enrichWithAdDetails": true}
Extra data included when enabled:
- ๐ข Advertiser info: page about text, category, likes, profile photo, cover photo, verification status
- ๐ท Instagram: username, followers, verification status
- ๐ฏ Targeting (EU): location audience, age/gender breakdown, total EU reach
- ๐ฐ Payer/Beneficiary: who paid for and benefits from the ad
- โ ๏ธ Violations: any policy violation types flagged by Facebook
โ ๏ธ Performance note: Each ad requires one extra API request. Scraping will be slower.
Valid Values Reference
Ad Types:
ALL- All ad typesPOLITICAL_AND_ISSUE_ADS- Political/election adsHOUSING_ADS- Real estate & housingEMPLOYMENT_ADS- Job postingsCREDIT_ADS- Financial products
Media Types:
ALL- All media typesIMAGE- Static images onlyVIDEO- Video ads onlyMEME- Text-heavy imagesIMAGE_AND_MEME- Both image typesNONE- Text-only ads
Publisher Platforms:
FACEBOOK- Main Facebook feedINSTAGRAM- Instagram feed & storiesMESSENGER- Facebook MessengerWHATSAPP- WhatsApp BusinessTHREADS- Threads social platformAUDIENCE_NETWORK- Third-party apps/sites
Sort Methods:
SORT_BY_TOTAL_IMPRESSIONS- Most viewed first (default)SORT_BY_RELEVANCY_MONTHLY_GROUPED- Most recent first
๐ค Response Format (NDJSON Stream)
Each line is a JSON object representing real-time data. Process line-by-line as they arrive:
Log Messages
{"type":"log","level":"info","message":"๐ Processing 2 keyword queries","timestamp":"2026-01-25T23:14:09Z"}{"type":"log","level":"success","message":"๐ค Sent batch: 30 ads for \"nike\"","timestamp":"2026-01-25T23:14:15Z"}{"type":"log","level":"error","message":"โ Query failed: No ads found","timestamp":"2026-01-25T23:14:20Z"}
Ad Batches (Real-Time)
{"type":"batch","source":"keyword_query","query":"nike","batchSize":30,"ads":[{ad_object}, {ad_object}, ...],"timestamp":"2026-01-25T23:14:15Z"}
Completion Events
{"type":"query_complete","query":"nike","totalAds":100,"timestamp":"2026-01-25T23:14:30Z"}{"type":"advertiser_complete","advertiser":"Nike","totalAds":50,"timestamp":"2026-01-25T23:14:35Z"}
Error Events
{"type":"query_error","query":"test","error":"No ads found","timestamp":"2026-01-25T23:14:25Z"}{"type":"advertiser_error","advertiser":"invalid","error":"Could not resolve advertiser","timestamp":"2026-01-25T23:14:40Z"}
Summary Statistics
{"type":"summary","stats":{"queries":{"total":2,"success":2,"failed":0,"ads":150},"advertisers":{"total":1,"success":1,"failed":0,"ads":50}},"timestamp":"2026-01-25T23:14:40Z"}
Completion
{"type":"complete","timestamp":"2026-01-25T23:14:45Z"}
๐ Ad Data Structure
Each ad object contains:
{"id": "606497791453836","page_id": "15087023444","page_name": "Nike","page_url": "https://facebook.com/Nike","page_profile_picture_url": "https://...","page_likes": 5000000,"page_category": "Brand","text": "Just Do It campaign","title": "Ad Title","caption": "Visit our store","link_url": "https://nike.com","cta_text": "Learn More","media": {"type": "image|video","primary_thumbnail": "https://...","images": ["..."],"videos": ["..."]},"additional_assets": {"images": ["..."],"links": ["..."],"texts": ["..."],"videos": ["..."]},"start_date": "2024-01-15","end_date": "2024-02-15","is_active": true,"platforms": ["FACEBOOK", "INSTAGRAM"],"countries": ["US", "GB", "CA"],"ad_category": "MARKETING","contains_sensitive_content": false,"scraped_at": "2026-01-25T23:14:50Z",// Only present when enrichWithAdDetails: true"ad_details": {"advertiser": {"page": { "id": "15087023444", "about": { "text": "https://nike.com" } },"ad_library_page_info": {"page_info": {"ig_username": "nike","ig_followers": 306000000,"ig_verification": true,"page_verification": "BLUE_VERIFIED","page_cover_photo": "https://...","entity_type": "BRAND"},"page_spend": { "is_political_page": false }}},"aaa_info": {"targets_eu": true,"gender_audience": "All","age_audience": { "min": 18, "max": 65 },"eu_total_reach": 500000,"location_audience": [{ "name": "France", "type": "countries" }, "..."],"age_country_gender_reach_breakdown": ["..."],"payer_beneficiary_data": [{ "payer": "Nike Inc.", "beneficiary": "Nike" }],"has_violating_payer_beneficiary": false,"is_ad_taken_down": false},"violation_types": [],"verified_voice_context": {"types": ["UNCATEGORIZED"],"ad_library_all_geo_fin_serv_info": { "finserv_data": [] }}}}
๐ฏ Search Modes Explained
1. URL Mode (New in v0.2) ๐
Paste Ad Library URLs directly all filters are extracted automatically:
{"URLAds": [{ "url": "https://www.facebook.com/ads/library/?active_status=active&ad_type=all&country=US&q=nike&media_type=video" }],"maxResultsPerQuery": 100}
Use Case: You've already set up the perfect search on Facebook's Ad Library website just copy the URL and let the actor handle it.
๐ Single ad links also supported:
URLs containing ?id= fetch that one specific ad directly no search, no pagination:
{"URLAds": [{ "url": "https://www.facebook.com/ads/library/?id=907653308384731" }]}
Pair it with enrichWithAdDetails: true to get the full advertiser, targeting, and payer/beneficiary data for that ad:
{"URLAds": [{ "url": "https://www.facebook.com/ads/library/?id=907653308384731" }],"enrichWithAdDetails": true}
2. Keyword Search
Search for ads by keywords or brand names:
{"searchQueries": ["nike", "adidas"],"maxResultsPerQuery": 100}
Use Case: Find all ads mentioning your keywords across all advertisers
โ ๏ธ Important Keyword Search is Broad by Design
When using
searchQueries, Facebook Ads Scraper Pro performs a keyword search across all advertisers. This means it matches any ad whose text, title, or page name contains your keyword not just the brand you may have in mind.For example:
{"searchQueries": ["SHEIN"]}This will return ads from SHEIN Brasil, SHEIN KIDS, SHEIN Mexico, and any other page or ad copy containing the word "SHEIN". The impression-based ranking may also surface different ads than you'd expect when targeting a specific page.
If you want precise, targeted results for a specific advertiser, use one of these instead:
- ๐ข
searchAdvertisersresolves the brand name to its exact Facebook page(s) and fetches only their ads:{ "searchAdvertisers": ["SHEIN"] }- ๐
URLAdscopy the URL directly from Facebook's Ad Library after setting up your exact search filters:{ "URLAds": [{ "url": "https://www.facebook.com/ads/library/?q=SHEIN&country=ALL" }] }
3. Advertiser Search
Search ads from specific Facebook pages:
{"searchAdvertisers": ["Nike", "15087023444"],"maxResultsPerQuery": 100}
Use Case: Monitor what a specific brand/company is advertising. Names are resolved via Facebook's typeahead API all exact-match pages are scraped.
4. Combined Search
URLs, keywords, and advertisers all in one run:
{"URLAds": [{ "url": "https://www.facebook.com/ads/library/?q=pokemon&country=ALL&media_type=video" }],"searchQueries": ["marketing"],"searchAdvertisers": ["Nike", "Apple"],"maxResultsPerQuery": 50}
Use Case: Run a comprehensive competitive analysis in a single actor run. URLs are processed first with their own filters, then advertisers and keywords run with the input schema filters.
๐ Supported Countries & Languages
Countries (200+)
ALL, US, GB, CA, AU, DE, FR, ES, IT, BR, IN, JP, DZ, and 190+ more ISO 2-letter codes
Languages (100+)
en, es, fr, de, it, pt, ja, ko, zh, ar, and 90+ more ISO 2-letter codes
๐ Standby Mode Deep Dive
What is Standby Mode?
Standby Mode keeps the actor running 24/7 as an HTTP API server, ready to handle requests instantly without startup delays.
Traditional Batch Mode:
Request โ Start Actor (8-15s) โ Process โ Stop Actor
Standby Mode:
Request โ Instant Response (pre-warmed instance)
Why Choose Standby Mode?
| Use Case | Batch Mode | Standby Mode |
|---|---|---|
| Nightly automated scrape | โ Best choice | Overkill |
| Live competitor dashboard | โ Too slow | โ Essential |
| API for external apps | โ Not viable | โ Perfect |
| Real-time alerts | โ No | โ Yes |
| Webhook integrations | โ Doesn't work | โ Works great |
| Mobile app backend | โ No | โ Great |
| Research project | โ Good | Expensive |
Technical Advantages
Cold Start Elimination:
- Batch: 10-15 seconds to start
- Standby: 0 seconds (instant)
- Difference: 10-15 seconds per request saved
Scalability:
- Batch: One request at a time
- Standby: Handle 100+ concurrent requests
- Difference: 100x throughput
User Experience:
- Batch: User waits for response
- Standby: Instant results
- Difference: User stays engaged
Example: Competitor Monitoring Dashboard
Scenario: Build a live dashboard monitoring Nike, Adidas, and Puma ads
With Batch Mode:
Dashboard loadsโUser clicks "Nike" tabโAPI call to scraperโWait 10 seconds (cold start) โโWait 20 seconds (scraping) โโDisplay resultsโTotal time: 30 seconds (user frustrated)
With Standby Mode:
Dashboard loads (scraper pre-warmed)โUser clicks "Nike" tabโAPI call to scraperโResults instantly โโDisplay resultsโTotal time: 2 seconds (user delighted)
How to Access Standby Mode
Automatic Access: Simply use the actor URL directly:
https://dz-omar--facebook-ads-scraper-pro.apify.actor
No Configuration Needed:
- Instance is always running
- Ready 24/7
- No startup delay
- Just send HTTP requests
Direct Integration Example:
Your application can make direct API calls:
POST https://dz-omar--facebook-ads-scraper-pro.apify.actorContent-Type: application/json{"searchQueries": ["nike"],"maxResultsPerQuery": 50}
Standby Mode Pricing
- Higher Cost: Actor runs continuously
- Break-even Point: ~3-4 requests per day
- Best For: High-frequency usage patterns
- Not Ideal For: Low-frequency, scheduled tasks
Cost Comparison (Example):
100 daily requests- Batch mode: 100 starts ร 30 sec = 50 min/day = $$- Standby mode: Always on = $ (often cheaper!)
Standby Mode Limitations
- Maximum continuous run: ~30 minutes idle timeout
- Reconnect is automatic if disconnected
- Not suitable for very low-frequency usage
- Higher base cost even if no requests
Standby Mode Best Practices
- Keep Connections Alive: Send heartbeat requests periodically
- Handle Reconnections: Implement retry logic on client side
- Batch Related Requests: Send multiple queries in one request when possible
- Monitor Performance: Track response times and errors
- Set Reasonable Limits: Don't request 10,000 ads if you need 100
| Aspect | Details |
|---|---|
| Requests | No hard limit, respects Facebook's rate limits |
| Batch Size | Default 30 ads, configurable 10-100 |
| Results per Query | 1-10,000 ads per query |
| Concurrent Requests | Unlimited (standby mode scales automatically) |
| Response Time | Real-time streaming - results as they arrive |
| Memory Usage | No limits - stream handles 1000s of ads |
๐ก๏ธ Error Handling & Migration
Automatic Retry Logic
- Failed queries are retried up to 3 times
- Exponential backoff prevents rate limiting
- Failed queries are logged but don't stop the job
Migration Handling
Server automatically handles Apify platform migrations:
{"type":"migrating","message":"Server is migrating to new instance","timestamp":"..."}
Connection behavior:
- Connection closes gracefully
- Reconnect to resume if interrupted
- No data loss - state is preserved
๐ ๏ธ Troubleshooting
URL Mode Issues
- URL not recognized: Make sure you're copying from
https://www.facebook.com/ads/library/... - Filters not applied: Check that the URL contains the expected query parameters
- Wrong result count: Use
maxResultsPerQueryto control how many ads are fetched per URL
Search Issues
- No results: Try broader keywords or check spelling
- Limited data: Increase
maxResultsPerQueryor expand date ranges - Missing recent ads: Facebook may have indexing delays
Connection Issues (Free Tier)
- Intermittent failures: Consider upgrading to Paid tier for stability
- Slow performance: Reduce batch size or split into multiple smaller runs
- Rate limiting errors: Wait a few minutes before retrying, or upgrade to Paid
Geographic Filtering
- Empty countries String: Use
"ALL"for global targeting - Wrong country codes: Use ISO 2-letter codes (US, not USA)
- Missing regional ads: Some ads may not be available in all regions
Media Access
- Missing media URLs: Some ads may have expired media
- Broken links: Media URLs may expire after extended periods
- Empty arrays: Check if media type matches your filter
Performance Optimization
- Large datasets: Use date ranges to limit scope
- Free tier limits: Consider Paid tier for 1000+ ads per query
- Better results: Upgrade to Paid tier for enterprise-grade stability
๐ Business Intelligence Applications
๐ฏ Competitive Intelligence
- Ad Strategy Analysis: Track competitor creative strategies
- Platform Presence: Monitor competitor activity across platforms
- Campaign Duration: Analyze campaign lengths and timing
๐ Campaign Optimization
- Creative Inspiration: Download high-quality assets
- CTA Analysis: Study effective call-to-action strategies
- Performance Benchmarking: Compare page engagement metrics
๐ Market Research
- Industry Trends: Filter by category for sector analysis
- Geographic Patterns: Analyze regional strategies
- Content Evolution: Track messaging changes over time
๐ค Support & Resources
Get Help
- ๐ Website: flowextractapi.com
- ๐ง Email: flowextractapi@outlook.com
- ๐ Apify Profile: FlowExtract API
- ๐ฌ GitHub Issues: FlowExtractAPI
Social Media
- ๐ผ LinkedIn: flowextract-api
- ๐ฆ Twitter: @FlowExtractAPI
- ๐ฑ Facebook: flowextractapi
๐ Related Actors by FlowExtract API
๐ฌ Video & Media
- YouTube Transcript Extractor - Extract transcripts with timestamps
- YouTube Scraper Pro - Complete channel and playlist extraction
- Zoom Scraper - Download recordings and transcripts
- Loom Scraper - Loom video and transcript extraction
๐ Real Estate
- Idealista Scraper API - Spanish property data with API
- Idealista Scraper - Real estate listings extractor
๐ ๏ธ Developer Tools
- Screenshot - Fast webpage screenshots
- Ultimate Screenshot - Advanced screenshot tool
- Network Security Scanner - Security vulnerability scanner
๐ฑ Social Media
- Facebook Ads Scraper Pro - Extract Facebook ads data
โ๏ธ Legal & Compliance
- Public Data Access: Only processes publicly available Facebook Ad Library data
- Rate Limiting: Respects Facebook's service limits and terms of use
- Data Protection: No storage of personal information or unauthorized data collection
- Commercial Use: Suitable for business intelligence and research applications