Facebook Posts Reactions Scraper
Pricing
from $1.50 / 1,000 results
Facebook Posts Reactions Scraper
Facebook Posts Reactions Scraper measure engagement on public Facebook pages. Get Like, Love, Haha, Wow, Care, Sad and Angry counts per post, plus comments, shares, post text and photos. Export to JSON, CSV or Excel, or schedule runs.
Pricing
from $1.50 / 1,000 results
Rating
0.0
(0)
Developer
Alpha Scraper
Maintained by CommunityActor stats
0
Bookmarked
12
Total users
4
Monthly active users
24 days ago
Last modified
Categories
Share
📊 Facebook Posts Reactions Scraper – Overview
The Facebook Posts Reactions Scraper collects reaction and engagement data from posts on public Facebook pages and profiles. Give it usernames or profile URLs, and it returns a structured dataset with each post's text, link, photo URLs and a full reaction breakdown: Like, Love, Haha, Wow, Care, Sad and Angry.
It is built for social media managers, marketers, analysts, agencies and researchers who need Facebook engagement metrics without opening every post by hand. The Facebook Posts Reactions Scraper turns a timeline into clean JSON rows you can sort, chart and compare.
Every row also includes the comment count, share count, total reaction count and page details such as the page name, page ID and profile picture. Run the Facebook Posts Reactions Scraper from Apify Console, call it through the Apify API, or schedule it to track pages over time.
💡 Tip: The quickest start: enter one username (for example
Cristiano), set Max Items Per URL to 10 and click Start.
✨ Facebook Posts Reactions Scraper – Key Features
| Feature | What it means for you |
|---|---|
| 👍 Reaction breakdown | Separate counts for Like, Love, Haha, Wow, Care, Sad and Angry on every post |
| 📈 Engagement metrics | Total reactions, comments and shares, plus the formatted numbers Facebook displays (e.g. "1.8M") |
| 📝 Post content | Post text and a direct link to each post |
| 🖼 Photo URLs | Links to the images attached to each post |
| 👥 Multiple targets | Mix usernames and full URLs from many pages or profiles in one run |
| 🔢 Per-profile limit | maxItemsPerUrl caps how many posts are collected from each target |
| 🔓 No login fields | The input asks for no account details; only publicly visible posts are collected |
The Facebook Posts Reactions Scraper keeps loading older posts until it reaches your limit or runs out of available posts, so you decide how much history each run covers.
🔍 What Data Can the Facebook Posts Reactions Scraper Extract?
Each dataset item represents one Facebook post. The Facebook Posts Reactions Scraper groups its data into four areas:
- Page details – page or profile name, page ID, page URL and profile picture URL
- Post details – post text, post URL and the photo URLs attached to the post
- Reaction counts – a count for each of the seven reaction types, plus a
reactionslist with name, count and formatted count - Engagement totals – comment count, share count, total reaction count and the top reaction
📌 Note: The Facebook Posts Reactions Scraper returns reaction counts, not the names or profiles of people who reacted. It does not return comment text, publish dates or video files.
🚀 How to Use the Facebook Posts Reactions Scraper
Running the Facebook Posts Reactions Scraper takes only a few minutes:
- Step 1: Open the Facebook Posts Reactions Scraper in Apify Console and go to the Input tab.
- Step 2: Add Facebook usernames to Usernames (or full URLs), for example
Cristiano. - Step 3: Optionally add full links to Profile / Page URLs, for example
https://www.facebook.com/Selena/. - Step 4: Set Max Items Per URL to the number of posts you want from each target.
- Step 5: Click Start, then open the dataset and export it as JSON, CSV, Excel, XML or HTML.
⚡ Good to know: Results are written to the dataset once the Facebook Posts Reactions Scraper has finished collecting posts from all profiles in the run, so an empty dataset mid-run is normal.
Developers can start the Facebook Posts Reactions Scraper through the Apify API with the same JSON input shown below and read the dataset items when the run succeeds.
💡 Why Use the Facebook Posts Reactions Scraper?
Teams choose the Facebook Posts Reactions Scraper when they need repeatable engagement data:
| Benefit | Details |
|---|---|
| ⏱ Saves manual work | No need to open posts one by one and copy reaction numbers |
| 😊 Audience sentiment | Love, Haha, Sad and Angry counts show how people feel, not just how many reacted |
| 🏁 Competitor benchmarking | Compare engagement across several brand or creator pages in one run |
| 🔁 Automation | Apify scheduling, webhooks and integrations keep the data fresh |
🧭 How to Scrape Reactions from Multiple Facebook Pages at Once
The Facebook Posts Reactions Scraper merges both input lists into one: entries from usernames come first, followed by entries from urls. Blank entries are ignored.
- An entry starting with
httpis treated as a full profile or page URL. - Any other entry is treated as a username.
- Exact duplicate entries are removed automatically.
- The post limit applies to each target, so 3 pages with a limit of 20 can return up to 60 rows.
- Rows are saved target by target, in the order of your input.
⚠️ Watch out: Duplicate removal compares text exactly.
Cristianoandhttps://www.facebook.com/Cristianoare different entries, so the Facebook Posts Reactions Scraper would process that page twice. Use one format per page.
❓ Can You Track Like, Love, Haha, Wow, Care, Sad and Angry Counts Separately?
Yes, that is the core job of the Facebook Posts Reactions Scraper. Every row has seven dedicated fields (like_count, love_count, haha_count, wow_count, care_count, sad_count and angry_count), so you can calculate sentiment ratios directly in a spreadsheet.
If a reaction type has not been used on a post, its field is null. The reactions array lists only the reaction types Facebook reports for that post.
🎯 Facebook Posts Reactions Scraper Use Cases
| Use case | How the Facebook Posts Reactions Scraper helps |
|---|---|
| 📈 Social media analytics | Track reaction and comment trends on your own page |
| 🏢 Competitor analysis | Benchmark engagement on competitor pages and spot their strongest content |
| 😊 Sentiment research | Compare Love, Angry and Sad reactions to gauge emotional response |
| 🌟 Influencer research | See how audiences respond to public creators and public figures |
| 🎓 Academic research | Build datasets of public engagement for social media studies |
📥 Input – Facebook Posts Reactions Scraper Settings
The Facebook Posts Reactions Scraper has three input fields. None is marked as required, but you need at least one username or URL: with no targets, the run ends without saving data.
| Field | Type | Description | Example |
|---|---|---|---|
usernames | Array of strings | Facebook usernames or full profile/page URLs; a mix of both is accepted | ["Cristiano"] |
urls | Array of strings | Full Facebook profile or page URLs, kept separate from usernames | ["https://www.facebook.com/Selena/"] |
maxItemsPerUrl | Integer | Maximum posts to collect per page or profile; 10 when left empty | 20 |
🧾 Sample Input JSON
{"usernames": ["Cristiano"],"urls": ["https://www.facebook.com/Selena/"],"maxItemsPerUrl": 20}
This input tells the Facebook Posts Reactions Scraper to collect up to 20 posts from each of the two profiles, up to 40 rows in total.
📤 Output – Facebook Posts Reactions Scraper Dataset
The Facebook Posts Reactions Scraper saves each post as one dataset item. The sample below is shortened: image URLs are trimmed and only some reactions and top_reactions entries are shown.
🧾 Sample Output JSON
[{"url": "https://www.facebook.com/Cristiano","name": "Cristiano Ronaldo","post_url": "https://www.facebook.com/Cristiano/posts/pfbid0ExamplePostId","pageUrl": "https://www.facebook.com/Cristiano","profilePicture": "https://scontent.xx.fbcdn.net/v/.../profile.jpg","postText": "Uma vitória de milhões!","pageId": "100064512345678","media": {"photo_urls": ["https://scontent.xx.fbcdn.net/v/.../photo_1.jpg"]},"like_count": 978930,"love_count": 545793,"haha_count": 257629,"wow_count": 1477,"care_count": 85722,"sad_count": 1472,"angry_count": 415,"comment_count": 146546,"share_count": 25994,"i18n_share_count": "25K","reactions": [{ "name": "Like", "count": 978930, "i18n": "978K" },{ "name": "Love", "count": 545793, "i18n": "545K" }],"engagement": {"reaction_count": 1871438,"aggregated_reaction_count": null,"i18n_reaction_count": "1.8M","ig_reaction_count": null,"top_reactions": [{ "node": { "id": "1635855486666999", "localized_name": "Like" }, "reaction_count": 978930, "i18n_reaction_count": "978K" }],"top_reaction": { "node": { "id": "1635855486666999", "localized_name": "Like" }, "reaction_count": 978930, "i18n_reaction_count": "978K" }}}]
📋 Facebook Posts Reactions Scraper Output Fields
| Field | Type | Description |
|---|---|---|
url | String | Page or profile URL as reported by Facebook |
name | String | Name of the page or profile |
post_url | String | Direct link to the post |
pageUrl | String | Page or profile URL (same value as url) |
profilePicture | String | Profile picture URL |
postText | String / null | Post text; null when a post has no text |
pageId | String | Facebook ID of the page or profile |
media.photo_urls | Array | Image URLs attached to the post (empty if none) |
like_count, love_count, haha_count, wow_count, care_count, sad_count, angry_count | Integer / null | Count per reaction type; null when that type is absent |
comment_count | Integer / null | Number of comments |
share_count | Integer / null | Number of shares |
i18n_share_count | String / null | Share count as displayed, e.g. "25K" |
reactions | Array | Objects with name, count and i18n (formatted count) |
engagement.reaction_count | Integer / null | Total reactions on the post |
engagement.aggregated_reaction_count | Integer / null | Aggregated total when Facebook provides one; often null |
engagement.i18n_reaction_count | String / null | Total reactions as displayed, e.g. "1.8M" |
engagement.ig_reaction_count | Integer / null | Instagram reaction count when reported; often null |
engagement.top_reactions | Array | Reaction entries as provided by Facebook, with node.localized_name, reaction_count and i18n_reaction_count |
engagement.top_reaction | Object / null | First entry of top_reactions, usually the most used reaction |
📌 Note: The dataset contains post rows only. The Facebook Posts Reactions Scraper saves no separate error or status rows: a private, unavailable or empty profile simply adds no rows, and details appear in the run log.
💰 Pricing – How Much Does the Facebook Posts Reactions Scraper Cost?
The Facebook Posts Reactions Scraper uses pay-per-result pricing: you pay for the post rows saved to the dataset. The current price is shown on the Actor's Pricing tab in Apify Store.
| Cost factor | How to control it |
|---|---|
| Posts per profile | Lower maxItemsPerUrl to collect only the posts you need |
| Duplicate targets | Use one format per page so it is not processed twice |
| Empty or failed targets | Profiles that return no posts add no rows |
💰 Cost tip: Start with a small test (one profile, 5–10 posts), check the output, then scale up your Facebook Posts Reactions Scraper runs.
🧰 Tips for Better Facebook Posts Reactions Scraper Results
| Tip | Why it helps |
|---|---|
Include https:// in full URLs | Entries not starting with http are treated as usernames, so facebook.com/Cristiano would not resolve |
| Keep limits realistic | Very active pages have thousands of posts; match the limit to your analysis window |
Use the flat *_count fields | They are simpler to chart than the nested engagement object |
| Schedule regular runs | Track how reaction totals change over days or weeks |
💡 Tip: Comparing pages? Use the same
maxItemsPerUrlfor every target so each page contributes the same number of recent posts to your Facebook Posts Reactions Scraper dataset.
🙋 Frequently Asked Questions
🔐 Do I need a Facebook account to use the Facebook Posts Reactions Scraper?
No. The Facebook Posts Reactions Scraper has no login fields and works with publicly visible posts only. Content limited to friends or logged-in users will not appear.
👥 Can the Facebook Posts Reactions Scraper show who reacted to a post?
No. It returns reaction counts per type, not lists of the users who reacted.
🔢 How many posts can I scrape from one Facebook page?
Enter any number in maxItemsPerUrl. The Facebook Posts Reactions Scraper keeps loading posts until it reaches that number or no more posts are available. Left empty, it collects up to 10 posts per target.
📅 Does the output include post dates or comment text?
It includes the comment count, but not comment text or publish dates. Open the post_url link when you need a post's date.
⏰ Can I schedule the Facebook Posts Reactions Scraper to run automatically?
Yes. Use Apify Schedules to run it daily or weekly, and connect webhooks or integrations to push fresh reaction data into your tools.
📜 Is it legal to scrape Facebook post reactions?
The Facebook Posts Reactions Scraper collects publicly visible engagement data. You are responsible for using it in line with Facebook's terms, data protection laws such as GDPR and your own compliance policies.
💬 Support
- 🐞 Found a bug or a missing value? Open an issue in the Issues tab of the Facebook Posts Reactions Scraper.
- 💡 Feature ideas for the Facebook Posts Reactions Scraper are welcome too.
- 📧 Contact me by email: alphascraper69@gmail.com