Facebook Posts Scraper - 33 Fields, Reaction Split avatar

Facebook Posts Scraper - 33 Fields, Reaction Split

Pricing

from $3.61 / 1,000 result items

Go to Apify Store
Facebook Posts Scraper - 33 Fields, Reaction Split

Facebook Posts Scraper - 33 Fields, Reaction Split

Reads posts from public Facebook pages and profiles, with an optional date range. 33 fields per post: text, timestamp, likes, comments and shares, the reaction split across like, love, care, haha, wow, sad and angry, media type and URLs, video and reel flags, and the source of shared posts.

Pricing

from $3.61 / 1,000 result items

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

117

Total users

8

Monthly active users

4 days ago

Last modified

Share

ParseForge

Facebook Posts Scraper

Scrape the recent posts of any public Facebook page or profile — no login, no API key. Every post comes with its text, full reaction breakdown, shares, comments, media links, and publish date. List as many pages as you like in one run. Export to CSV, JSON, Excel, or XML.

No minimum charge: you only pay for the results you get.

Facebook's official Graph API requires app review, page tokens, and strict rate limits that throttle bulk collection. This scraper reads the public post feeds directly from page and profile URLs, filters by date range, and returns each matching post in one fixed schema. Collect Facebook posts for content analysis, brand monitoring, or archival without writing a single line of code.

Who uses itWhat they scrape Facebook for
Social media managersBenchmark competitor page content and engagement over time.
Market researchersTrack public sentiment and trending topics across brand pages.
Data journalistsGather a corpus of public posts for reporting on narratives or disinformation.
ArchivistsPreserve public page histories before content is edited or deleted.

What it does

This Actor collects Facebook posts from public pages and profiles and returns each one as a flat row with text, reactions, shares, comments, media, and timestamps.

  • 🔗 Flexible input: feed it full Facebook page URLs, profile URLs, or short page slugs like cern or nasa.
  • 🧾 Recent posts per page: Facebook shows a logged-out visitor the top of a timeline, which is roughly the 25-40 most recent posts. Scale up by listing more pages, not by asking for a deeper history of one.
  • 📅 Date filtering: set a minimum and maximum post date to collect only posts published in a specific window.
  • ⚙️ Concurrency control: adjust parallel scraping from 1 to 5 pages to balance speed and IP courtesy.
  • 📦 Structured output: every post lands in a clean dataset with the same fields, ready for analysis.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with Facebook data

📊 Monitor competitor content.

A social media manager enters a competitor's page URL and a 30-day date range to collect every post and its engagement counts for a monthly content audit.

🔍 Research public discourse.

A data journalist scrapes posts from multiple news outlet pages over a six-month period to analyze how a major story was framed.

🗄️ Archive posts on a schedule.

An archivist runs the scraper on a public figure's profile every day, so the recent posts are captured before any of them are edited or deleted.

📈 Track brand sentiment.

A market researcher collects posts mentioning a product across several brand pages and exports the dataset to a sentiment analysis tool.

Why choose this scraper

What you get
No API approvalsScrapes public feeds directly, no app registration or token management needed.
Date-range controlCollect only posts published between two dates you specify.
Slug shortcutsEnter page slugs instead of full URLs for faster setup.
Scalable collectionQueue hundreds of pages in a single run, throttled to stay polite.

How it compares

No other Store actor targets Facebook the same way, so the honest comparison is with the alternatives teams actually weigh.

Facebook Posts ScraperBuild it in-houseBy hand
SetupRun it now, zero configDays of engineeringNone, but hours per pull
When Facebook changesMaintained for youYou fix itYou re-learn the page
Proxies, retries, anti-botBuilt inYour problemBrowser only
OutputFixed JSON schema, CSV/Excel exportWhatever you buildCopy-paste
CostPay per resultEngineering timeAnalyst hours

Configure the run

Drive the Actor from page URLs, profile URLs, and page slugs, alone or together, and date filters run as each post is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
"startUrls": [
{
"url": "https://www.facebook.com/cern/"
}
],
"maxItems": 10
}

A larger pull:

{
"startUrls": [
{
"url": "https://www.facebook.com/cern/"
}
],
"maxItems": 200
}

Pricing

Pay-per-result: $0.00405 per result collected. You pay only for the results written to your dataset.

Results collectedApproximate cost
100 results$0.40
1,000 results$4.05
10,000 results$40.50

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Facebook Posts Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to Facebook through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/facebook-posts-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check that the page or profile URL is correct and that its posts are publicly visible without logging in. Also verify your date filter is not excluding all posts. Try removing the date filter and running again.

The scraper is running very slowly.

Increase the Max Concurrency setting to 3 or 5 to process more pages in parallel. Each page needs a fresh exit IP, so a long list of pages takes proportionally longer.

Some posts are missing media or have broken image links.

Facebook may serve temporary URLs for media that expire. The scraper captures the URLs available at the time of collection. Re-run the scraper to get fresh media links if needed.

I get an error about the URL format.

Ensure URLs start with https://www.facebook.com/ and point to a page or profile. For slugs, enter only the short text identifier without slashes or the full domain.

The scraper stopped before reaching my Max Posts limit.

Facebook serves a logged-out visitor only the first page of a timeline, roughly the 25-40 most recent posts, so a single page URL cannot fill a large limit on its own. Add more page URLs or slugs to collect more. A date filter narrowing the range will also end a run early.

FAQ

QuestionAnswer
Do I need a Facebook account or login to use this scraper?No. This Actor reads publicly visible posts from pages and profiles that do not require a login. It does not access private content or require any Facebook credentials.
Can I scrape posts from private Facebook groups or profiles?No. The scraper only collects posts that are publicly accessible without authentication. Private groups, locked profiles, and friends-only content cannot be reached.
What data fields does the scraper return for each post?Each row includes the post text, publish date, reaction counts, share count, comment count, attached media URLs, and the source page or profile URL. The exact field list is shown in the sample output on the Actor's page.
How many posts can I scrape in one run?As many as the pages you list will give. Facebook shows a logged-out visitor roughly the 25-40 most recent posts of any one page, so the run total grows with the number of page URLs you provide, up to the 1,000,000 limit.
Can I filter posts by date?Yes. Use the Min Post Date and Max Post Date fields to collect only posts published within a specific date range. Leave them empty to collect all available posts.
What is a page slug and how do I use it?A page slug is the short identifier in a Facebook URL, like 'cern' in facebook.com/cern. You can enter slugs directly in the Page Slugs field instead of full URLs.
Can I scrape multiple pages at once?Yes. Add multiple URLs in the Start URLs field or multiple slugs in the Page Slugs field. The scraper will process them sequentially or in parallel based on your concurrency setting.
Is this scraper legal to use?Scraping public data from Facebook is a complex legal area. You are responsible for complying with Facebook's terms of service, applicable laws, and any website-specific rules. Consult a legal professional for your specific use case.
How do I export the scraped data?Your dataset is stored in Apify's cloud storage. You can download it directly as CSV, JSON, Excel, or XML from the run detail page, or push it to an external service via an integration.
What does the Max Concurrency setting do?It controls how many pages the scraper processes in parallel, from 1 to 5. Higher concurrency finishes faster but uses more resources. Start with 1 and increase if you need more speed.

Next step

Use these results as input for other ParseForge actors:

Browse the full ParseForge collection for more scrapers.

🆘 Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Meta Platforms, Inc. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.