Facebook Posts Media & OCR Content Harvester
Pricing
$24.99/month + usage
Facebook Posts Media & OCR Content Harvester
This Facebook Posts Scraper extracts text posts, media, reactions, shares, comments, and metadata from public pages and profiles. Ideal for trend tracking, social listening, competitor analysis, and building large-scale Facebook intelligence.
Pricing
$24.99/month + usage
Rating
5.0
(2)
Developer
Scrapier
Maintained by CommunityActor stats
2
Bookmarked
98
Total users
5
Monthly active users
19 days ago
Last modified
Categories
Share
Extract the visual content of public Facebook Page posts: a clean per-post image-asset manifest (full-resolution URL, width, height, id, suggested filename), the OCR image-text captured from Facebook's accessibility captions, and the entities found in the text — links, emails, phone numbers, mentions, hashtags, prices, and call-to-action phrases.
This actor is a superset sibling of a standard Facebook Posts Scraper. Where a posts scraper measures a timeline, this actor harvests the creative the scrape already fetched — with zero extra Facebook requests. Every emitted value is a copy or transform of something actually scraped (image URI / dimensions / id, accessibility caption, post text). Nothing is modeled or fabricated.
What you get
- 🖼️ Per-post image manifest —
creative.images[]withurl,width,height,id,ocrText,suggestedFilename, straight frommedia[].photo_image. - 📄 OCR image-text —
creative.imageText+hasTextInImage, derived from Facebook's accessibility caption (media[].accessibility_caption). Surfaced by no standard Posts scraper. - 🔍 Entity extraction —
creative.entitieswith real substrings of the text:urls,emails,phones,mentions,hashtags,prices,ctaMatches. Only non-empty types are attached. - 🏷️ Derived type —
photo/video/link/text, inferred from the scraped media typenames and entities. - 📦 Run-level media manifest — a flat list of every image asset saved to the key-value store (
MEDIA_MANIFEST) for bulk download, plus aMEDIA_INDEXsummary (top OCR keywords, link domains, coverage counts). - 🤖 Optional AI enrichment — per-post
sentiment,topics,brandSafety, andlanguageover the creative free-text (caption + OCR), across multiple providers.
Output modes
| Input | Behaviour |
|---|---|
| default | Each dataset row = the pristine base post fields plus a namespaced creative block and surfaced view fields (type, imageCount, imageText, entitySummary, scrapedAt). |
metricsOnly: true | Rows keep only identity fields + the creative block (drops the heavy base post payload). |
rawData: true | Rows are the plain base post objects, byte-identical to the base Facebook Posts Scraper. No creative block, no filtering. |
Input
| Field | Type | Default | Description |
|---|---|---|---|
startUrls | array | — | Facebook page URLs or usernames. Required. |
resultsLimit | integer | 20 | Max posts per page. |
captionText | boolean | true | Include the post caption text (OCR/entity extraction runs over it). |
onlyPostsNewerThan | string | — | Absolute (2024-01-01) or relative (7 days) start date. |
onlyPostsOlderThan | string | — | Absolute or relative end date. |
includeMedia | boolean | true | Build the per-post image manifest. |
extractEntities | boolean | true | Extract links / hashtags / prices / CTAs / etc. |
ocrKeywords | array | [] | Keep only posts whose text or image-OCR contains any of these. |
mediaManifest | boolean | true | Save a run-level media manifest to the key-value store. |
metricsOnly | boolean | false | Drop base post fields, keep only creative. |
rawData | boolean | false | Return the plain base post array unchanged. |
aiEnhancement | boolean | false | Add AI sentiment / topics / brand-safety over the creative text. |
aiModel | enum | claude-haiku-4-5 | AI model; provider auto-detected from the name. |
aiApiKey | secret | — | API key for the AI provider (falls back to the provider env var). |
proxyConfiguration | object | Apify proxy | Residential → datacenter fallback, or custom proxy URLs. |
How it works
The scraping core discovers the page id and GraphQL doc_id from the live page, then fetches the timeline feed with cursor-based pagination — the identical, unmodified core the base scraper uses (so rawData output is byte-for-byte the base output). The Media & OCR feature layer runs entirely on the already-fetched data: it reads media[].photo_image, media[].accessibility_caption, media[].id, and the post text, and reshapes them into the image manifest, OCR text, and entity lists. No additional Facebook network calls are made by the feature layer.
Keywords
facebook posts scraper, facebook image extractor, facebook OCR, image text extraction, accessibility caption, facebook media manifest, facebook creative harvester, hashtag extraction, link extraction, CTA detection, facebook page monitoring, ad creative, brand safety, social media image download, facebook post entities.
Legal & compliance
This actor collects only publicly accessible data and does not bypass login restrictions or access private content. Use scraped data responsibly and in compliance with applicable laws and platform terms (GDPR, CCPA).