Facebook

Facebook Page Posts Scraper

Extract posts from public Facebook pages and profiles without logging in: text, publish time, reactions, comment and share counts, photos and videos, plus the page's followers, category and website on every post.

What it extracts

Every field below comes from the Actor’s published dataset schema.

FieldDescriptionType
facebook_page_namePagetext
messagePost Messagetext
creation_timePosted Datedate
post_urlPost URLlink
reactionsReactionsobject
comments_countCommentsnumber
shares_countSharesnumber
attachmentsAttachmentsarray
facebook_page_followersPage Followersnumber
facebook_page_categoryPage Categorytext
facebook_page_urlPage URLlink

Input parameters

Generated from the Actor’s input schema — the same fields the Apify console shows.

ParameterTypeRequiredDescription
startUrlsarrayRequiredFacebook pages or public profiles to scrape. Paste a page URL such as https://www.facebook.com/nike, a username such as nike, or a profile.php?id=… link. One entry per page, and as many pages as you like.
maxItemsintegerOptionalMaximum number of posts to scrape from each page (start URL).
untilDatestringOptionalStop scraping a page when its posts get older than this date (format: YYYY-MM-DD). Leave empty to scrape until maxItems is reached.
proxyConfigurationobjectOptionalProxy configuration. Defaults to Apify residential proxies, which Facebook requires for posts; datacenter IP addresses are refused.

API access

Run this Actor from your own code over the Apify API.

Inputjson
{
  "startUrls": [
    "https://www.facebook.com/nike",
    "humansofnewyork"
  ]
}
REST — run and get resultsbash
curl -X POST \
  "https://api.apify.com/v2/acts/logical_scrapers~facebook-page-posts-scraper/run-sync-get-dataset-items?token=YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"startUrls":["https://www.facebook.com/nike","humansofnewyork"]}'
JavaScript — apify-clientjavascript
import { ApifyClient } from 'apify-client'

const client = new ApifyClient({ token: 'YOUR_API_TOKEN' })

const run = await client.actor('logical_scrapers~facebook-page-posts-scraper').call({
  "startUrls": [
    "https://www.facebook.com/nike",
    "humansofnewyork"
  ]
})

const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)
Python — apify-clientpython
from apify_client import ApifyClient

client = ApifyClient("YOUR_API_TOKEN")

run = client.actor("logical_scrapers~facebook-page-posts-scraper").call(run_input={
    "startUrls": [
        "https://www.facebook.com/nike",
        "humansofnewyork",
    ],
})

for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

Runs are executed on Apify. Create an API token in your Apify account, then call the Actor over REST or with the official client for your language. The same input object works in the Apify console, so you can test interactively before automating.

Pricing

Data not currently verified. This Actor's pricing model is not declared in our source repository.

Current rates are published on the Apify listing and can change, so they are not duplicated here. See pricing on Apify

Reliability

99.4% run success rate

Measured across all public Goldmine Actors on Apify, 2026-08-24. This is an account-level figure, not a per-Actor benchmark — per-Actor speed and completeness benchmarks are not yet published. Source.

Field and input tables are generated from this Actor's published schemas. Usage figures measured 2026-08-24 from the Apify listing.