Facebook post scraper ppr avatar

Facebook post scraper ppr

Pricing

from $10.00 / 1,000 posts

Go to Apify Store
Facebook post scraper ppr

Facebook post scraper ppr

This actor will scrape post info from facebook like caption, like , shares and comments and more quickly

Pricing

from $10.00 / 1,000 posts

Rating

5.0

(1)

Developer

Mina

Mina

Maintained by Community

Actor stats

10

Bookmarked

439

Total users

24

Monthly active users

6 days ago

Last modified

Share

Facebook Post Scraper

Extract full post data from any public Facebook post — reactions, comments, shares, views, media and author — from a plain URL. No cookies, no login, no Facebook account required.

What does Facebook Post Scraper do?

Give it one or more public Facebook post URLs and it returns a structured record for each: the author, post text, thumbnail, publish date, attached media, and a complete engagement breakdown including reaction counts by type, comment count, share count and video views.

It works on regular posts, video posts, Reels and Watch URLs, and it needs no session cookies or credentials — so there is nothing to refresh and no account to get restricted.

Results land in a dataset you can export as JSON, CSV, Excel, XML or an HTML table, or pull straight from the API.

Why use Facebook Post Scraper?

  • Social media monitoring — track how specific posts perform over time
  • Competitor analysis — measure engagement on rival brand pages
  • Campaign reporting — pull reaction, comment and share counts into your own dashboards
  • Influencer vetting — check whether engagement on a post looks genuine before you pay for it
  • Content research — study which post formats earn the most reactions in your niche
  • No credentials to manage — nothing expires, nothing needs re-authenticating

How to use Facebook Post Scraper

  1. Open the Actor in Apify Console.
  2. Paste one or more public Facebook post URLs into urls.
  3. Click Start.
  4. When the run finishes, open the Output tab and export in the format you need.

To run it on a schedule, use Schedules in Apify Console and point it at the same dataset to build a time series.

Input

FieldTypeRequiredDescription
urlsarrayyesList of public Facebook post URLs to scrape.
urlstringnoA single post URL. Kept for backwards compatibility — prefer urls.

Input example

{
"urls": [
{ "url": "https://www.facebook.com/apifytech/posts/pfbid0ABC123" },
{ "url": "https://www.facebook.com/watch/?v=1234567890" }
]
}

Plain strings work too:

{
"urls": [
"https://www.facebook.com/apifytech/posts/pfbid0ABC123"
]
}

Supported URL formats

FormatExample
Page posthttps://www.facebook.com/<page>/posts/<id>
Video posthttps://www.facebook.com/<page>/videos/<id>
Watch linkhttps://www.facebook.com/watch/?v=<id>
Reelhttps://www.facebook.com/reel/<id>
Share linkhttps://www.facebook.com/share/...

Output

One dataset item per URL. The scraped payload sits under data:

{
"url": "https://www.facebook.com/apifytech/posts/pfbid0ABC123",
"data": {
"owner_name": "Apify",
"post_id": "1234567890",
"id": "9876543210",
"type": "post",
"post_title": "We just shipped something new...",
"permalink_url": "https://www.facebook.com/apifytech/posts/pfbid0ABC123",
"thumbnail": "https://scontent.xx.fbcdn.net/v/t39.30808-6/...",
"scrape_date": "2026-07-25T09:41:12",
"statistics": {
"reaction_count": 1420,
"comment_count": 87,
"shares_count": 34,
"video_view_count": 51200,
"reactions_details": {
"like": 1100,
"love": 240,
"haha": 40,
"wow": 25,
"sad": 10,
"angry": 5
}
},
"video_details": {}
}
}

If a post cannot be reached, the item carries an error field instead of full data:

{
"url": "https://www.facebook.com/apifytech/posts/deleted",
"data": { "permalink_url": "https://www.facebook.com/apifytech/posts/deleted" },
"error": "not found"
}

Data table

FieldTypeDescription
urlstringThe URL you submitted
data.owner_namestringPage or profile that published the post
data.post_idstringFacebook's post identifier
data.idstringInternal content identifier
data.typestringpost or video
data.post_titlestringPost text / title
data.permalink_urlstringCanonical link to the post
data.thumbnailstringPreview image URL
data.scrape_datestringWhen the record was collected
data.statistics.reaction_countnumberTotal reactions
data.statistics.reactions_detailsobjectReactions split by type (like, love, haha, wow, sad, angry)
data.statistics.comment_countnumberComments on the post
data.statistics.shares_countnumberTimes the post was shared
data.statistics.video_view_countnumberViews, for video posts
data.video_detailsobjectExtra video metadata where available
errorstringPresent only when the post could not be scraped

Dataset views

Facebook post — post URL alongside the scraped payload, ready to export.

How much does it cost to scrape Facebook posts?

This Actor uses pay-per-event pricing: a small charge when a run starts, plus a charge per result.

Posts scrapedDataset items
1010
100100
1,0001,000

Billing is one item per URL, so you can estimate cost directly from the length of your URL list. Exact per-event prices are shown on the Actor's Store page.

Tips and advanced options

  • Batch your URLs. One run with 500 URLs costs a single run-start charge; 500 separate runs cost 500 of them.
  • Check error first when processing results — unreachable or deleted posts return an error field rather than failing the whole run.
  • Only public posts work. Anything restricted to friends, private groups, or requiring a login cannot be reached without credentials.
  • Schedule it to track engagement growth on the same post over days or weeks.
  • reactions_details is the interesting field for sentiment work — the split between love, haha and angry says far more than a single total.

FAQ, disclaimers, and support

Do I need a Facebook account or cookies? No. The Actor works entirely without credentials, which is why there is no session to expire or refresh.

Does it work on private posts? No. Only publicly visible posts can be scraped.

Why does a post return error: "not found"? The post was deleted, made private, or the URL is wrong. The run continues and other URLs are unaffected.

Can it scrape comments themselves? This Actor returns comment counts. For comment text, use a dedicated Facebook comments scraper.

Is scraping Facebook legal? This Actor collects only publicly available information and does not bypass any login or access control. You are responsible for ensuring your use of the data complies with applicable law, including data-protection rules such as GDPR, and with Facebook's terms.

Something is broken or missing. Open an issue on the Actor's Issues tab and it will be picked up.