Facebook Group Posts Scraper avatar

Facebook Group Posts Scraper

Pricing

from $5.00 / 1,000 facebook group post scrapeds

Go to Apify Store
Facebook Group Posts Scraper

Facebook Group Posts Scraper

Scrape public Facebook group posts by group URL or group ID. Export post text, author, reaction/comment/share counts, media URLs, top comments, and pagination cursors. No login or cookies required. MCP/API-ready.

Pricing

from $5.00 / 1,000 facebook group post scrapeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

4 days ago

Last modified

Share

Scrape public Facebook group posts by group URL or group ID — no login, no cookies, no browser extension. The actor returns clean, MCP-friendly dataset records with post text, author details, publish time, reaction/comment/share counts, media URLs, top-comment previews, and resumable pagination cursors.

What it does

Give it one or more public Facebook group URLs (or numeric group IDs) and it returns one structured row per post. It pulls data through a managed provider chain (ScrapeCreators → SociaVault) so you never have to supply a Facebook session, fight Cloudflare, or maintain cookies. An optional cookieless Playwright fallback covers edge cases.

When to use it

  • Monitor discussion and engagement inside public Facebook groups
  • Build datasets of group posts for social listening, research, or trend analysis
  • Track top posts and top comments by reaction and comment volume
  • Feed an AI agent / MCP client structured Facebook group data on demand

When NOT to use it: for a Facebook Page feed, Marketplace listings, or the Ad Library — those are different surfaces. For private/closed groups you are not a member of, no public data is returned.

Output

One dataset record per post:

FieldDescription
groupUrl, groupId, groupSlugCanonical group identifiers
postId, postUrlPost identifier and direct permalink
textPost text (absent for media-only posts)
authorName, authorId, authorUrlPublic author identity when available
publishedAt, publishTimeISO 8601 timestamp + unix seconds
reactionCount, commentCount, shareCount, videoViewCountEngagement metrics
engagementCountSum of available reactions + comments + shares
imageUrl, videoUrl, videoDetailsMedia URLs and video metadata
topCommentsPreview of top comments (author + text + time)
sortBy, page, cursor, source, scrapedAtRun provenance

Run-level summaries are written to the default key-value store:

  • RUN_SUMMARY — full telemetry: counts, provider status codes, pagination cursors (nextCursors), and stop reason.
  • OUTPUT — compact agent-friendly summary.

Pricing

Pay-per-event: $0.005 per saved post plus a tiny $0.00005 actor-start event. Pay-Per-Usage (compute + proxy) is also available — pick at run time. Each run prints its cost cap up front and the actual amount billed at the end, so there are no billing surprises.

Input

  • groupUrls — public group URLs, e.g. https://www.facebook.com/groups/homemakingtips/
  • groupIds — optional numeric group IDs (use when you have an ID but no URL)
  • maxPosts — max posts saved across all groups (default 100)
  • maxPagesPerGroup — provider pages per group; providers return ~3 posts/page and paginate by cursor (default 5)
  • startCursor — resume a group feed using a cursor from RUN_SUMMARY.nextCursors
  • sortByRECENT_ACTIVITY, TOP_POSTS, CHRONOLOGICAL, or CHRONOLOGICAL_LISTINGS
  • dataSourceauto (providers then browser), provider, or browser
  • providerOrder — which managed provider is tried first
  • facebookCookies — optional JSON cookie array / raw Cookie header, browser fallback only
  • includeRawData — adds the raw source object to each row for custom parsing

Pagination

Providers return up to 3 posts per request and paginate with a cursor. Raise maxPagesPerGroup to collect more in one run, or grab a cursor from RUN_SUMMARY.nextCursors and pass it as startCursor to resume later without re-scraping.

Example (API)

curl -X POST "https://api.apify.com/v2/acts/khadinakbar~facebook-group-posts-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"groupUrls":["https://www.facebook.com/groups/homemakingtips/"],"maxPosts":30,"sortBy":"RECENT_ACTIVITY"}'

MCP / AI agents

Exposed in the Apify MCP server as apify--facebook-group-posts-scraper. Input is a single group URL or ID; output is flat, stable JSON sized for agent context. Empty/private groups return a graceful empty result with a _note; a total source failure returns an actionable error rather than a silent success.

FAQ

Do I need a Facebook login or cookies? No. The default path is provider-backed and cookieless. Cookies are only for the optional browser fallback on content you are authorized to access.

Why only ~3 posts per page? That is the provider's per-request cap for Facebook groups. The actor paginates automatically via cursor up to maxPagesPerGroup.

Can it read private/closed groups? Only public group content is returned. Private content requires an authorized session you supply yourself, and even then is subject to Facebook's terms.

What happens if a group is empty or unavailable? The run ends gracefully with a summary and stopReason. If every data source is blocked or errors, the run honestly fails with a clear message — it never reports a fake success.

Limits & compliance

Closed, private, deleted, age-gated, or membership-only content may return no records. Only scrape public data and data you are authorized to access. You are responsible for complying with Facebook's Terms of Service and applicable data-protection laws (including GDPR/CCPA). This actor does not collect private personal data on your behalf and is provided for lawful, authorized use only.