Facebook Posts Scraper avatar

Facebook Posts Scraper

Pricing

from $42.99 / 1,000 result items

Go to Apify Store
Facebook Posts Scraper

Facebook Posts Scraper

Scrapes Facebook posts from public pages and profiles. Returns each post as a flat row with text, reactions, shares, comments, media, and publish date. Supports date filtering and slug input.

Pricing

from $42.99 / 1,000 result items

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

80

Total users

17

Monthly active users

2 days ago

Last modified

Share

ParseForge

Facebook Posts Scraper

Scrape Facebook posts from any public page or profile, up to a million per run. Every post comes with its text, reactions, shares, comments, media links, and publish date. No login or API key. Export to CSV, JSON, Excel, or XML.

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.
  • ๐Ÿ“… 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 page histories.

An archivist runs the scraper on a public figure's profile with no date filter to capture the full post history before a campaign ends.

๐Ÿ“ˆ 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 collectionGrab up to a million posts per 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.05734 per result collected. You pay only for the results written to your dataset.

Results collectedApproximate cost
100 results$5.73
1,000 results$57.34
10,000 results$573.40

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. If the target page has a very long post history, reduce the Max Posts limit or add a date filter to narrow the range.

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.

The page likely has fewer publicly visible posts than your limit, or the date filter narrowed the results. Try removing the date filter or checking the page directly in a browser to see how many posts are public.

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?You can set the maximum posts limit up to 1,000,000. The scraper will stop when it reaches that number or when no more matching posts are found.
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.

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.