Posts Scraper for LinkedIn - Profiles, Pages & Search avatar

Posts Scraper for LinkedIn - Profiles, Pages & Search

Pricing

$4.00 / 1,000 post scrapeds

Go to Apify Store
Posts Scraper for LinkedIn - Profiles, Pages & Search

Posts Scraper for LinkedIn - Profiles, Pages & Search

Scrape LinkedIn posts from any profile, company page, keyword search or direct post URL. Returns the full post text, exact reaction and comment counts, the top comments, hashtags, links and media. No login and no cookies. Independent tool, not affiliated with LinkedIn.

Pricing

$4.00 / 1,000 post scrapeds

Rating

0.0

(0)

Developer

Scrape Sage

Scrape Sage

Maintained by Community

Actor stats

0

Bookmarked

10

Total users

8

Monthly active users

a day ago

Last modified

Share

Disclaimer: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by LinkedIn Corporation or any of its subsidiaries. All trademarks mentioned are the property of their respective owners. "LinkedIn" is referenced only to describe the publicly available website this Actor collects data from.

Four ways in, one clean table out. Point it at a person, a company page, a keyword, or a post URL and get the posts back with the full text, exact reaction and comment counts, and the comments themselves. No login, no cookies, no session tokens.

Most LinkedIn post scrapers make you buy the pieces separately - one actor for profile posts, another for company posts, another for keyword search, and another again for comments. This one does all four, and the comments come included.

Four inputs

InputWhat you getTypical use
profileUrlsA person's recent public postsTrack a founder, exec, or competitor's spokesperson
companyUrlsA company page's recent postsCompetitor content monitoring, brand tracking
searchKeywordsPublic posts mentioning a phraseSocial listening, buying-signal hunting ("hiring a CTO")
postUrlsExactly the posts you nameEnrich a list you already have

Mix them freely in one run. Every row says which source found it via sourceType.

What each post row contains

{
"type": "post",
"postUrl": "https://www.linkedin.com/posts/supabase_today-were-open-sourcing-supabase-evals-activity-7489047352075460608-EGgJ",
"activityId": "7489047352075460608",
"authorName": "Supabase",
"authorType": "company",
"authorUrl": "https://www.linkedin.com/company/supabase",
"text": "Today we're open-sourcing Supabase Evals, our benchmark for how well AI coding agents build with Supabase...",
"textLength": 1001,
"datePublished": "2026-07-31T20:00:28.487Z",
"postedAgoText": "1w",
"reactionCount": 286,
"commentCount": 25,
"engagementTotal": 311,
"topComments": [
{
"text": "Nice. The part I'd want as a user is a way to know the copy in the warehouse still matches Postgres...",
"authorName": "Renee Romero",
"authorUrl": "https://www.linkedin.com/in/renee-romero",
"postedAgoText": "2w"
}
],
"hashtags": ["postgres"],
"mentions": [],
"externalLinks": ["https://lnkd.in/gbRHqH-e"],
"imageUrl": "https://media.licdn.com/dms/image/...",
"hasMedia": true,
"detailFetched": true,
"sourceType": "company",
"scrapedAt": "2026-08-07T04:10:00.000Z"
}

Filters that run while it crawls

postedAfter / postedBefore for a date window, and minReactions to keep only the posts that actually performed. They are applied during the crawl, not to a truncated sample afterwards, so a filtered run still fills up to your maxResults.

What LinkedIn does and does not serve logged-out

Measured on this actor's own runs, so you know what you are buying.

  • Recent posts, not the full archive. A profile or company page publishes roughly its latest 6-20 posts to a logged-out visitor. There is no way to page back through years of history without an account, and this actor will not pretend otherwise. To go deeper on a topic rather than an author, use searchKeywords.
  • Engagement counts need the post page. Company page listings do not publish reaction counts; the post's own page does. That is why fetchPostDetails defaults to on - turning it off is faster and cheaper but returns text and author only.
  • Post pages carry a relative age, not a timestamp. Posts discovered from a profile or company page carry an exact ISO datePublished; posts reached only by URL or keyword may have just postedAgoText ("1w"). Both fields are emitted separately rather than converting a guess into a fake timestamp.
  • Comments are the ones LinkedIn shows publicly - typically the top ~10, with author, relative age and (where published) a like count. Not the full thread.
  • Never returned: anything behind the login wall - private posts, full reaction lists, connection graphs, or personal contact details.

Pricing

Pay-per-event: $0.004 per post, comments included. A run that finds nothing charges nothing, and every finished run tells you what to change.

Use with AI assistants (MCP)

This actor works as a tool in any MCP-compatible assistant through the Apify MCP server - ask your agent to "find what our competitors posted on LinkedIn this month and how it performed" and it can call this actor directly.

Agent-ready: autonomous payments (x402 & Skyfire)

This actor is agent-ready — AI agents can discover it, run it, and pay for it autonomously, with no Apify account and no human in the loop. It uses pay-per-event pricing and limited permissions, so it qualifies for Apify's agentic-payment standards:

  • x402 — an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the Apify MCP server — no account, no API key.
  • Skyfire — agent-to-service payments for fully autonomous AI-agent workflows.

Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.

Automate & schedule

Run this Actor on autopilot and pull results into your own stack:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });
const run = await client.actor('scrapesage/linkedin-posts-scraper').call({
"companyUrls": [
"https://www.linkedin.com/company/supabase"
],
"profileUrls": [
"https://www.linkedin.com/in/paulcopplestone"
],
"maxPostsPerSource": 20,
"maxResults": 100,
"fetchPostDetails": true,
"includeComments": true,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": [
"RESIDENTIAL"
]
}
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} records`);

Integrate with any app

Connect the dataset to thousands of apps - no code required:

  • Make - multi-step automation scenarios.
  • Zapier - push new records straight into your CRM or spreadsheet.
  • Slack - get notified when a scheduled run finds something new.
  • Google Drive / Sheets - auto-export every run to a spreadsheet.
  • Airbyte - pipe results into your data warehouse.
  • GitHub - trigger runs from commits or releases.

More scrapers from scrapesage

Related Actors in the same category:

FAQ

How is this Actor billed? Pay-per-event: you pay only for the results it delivers, with no monthly rental and no start fee. The per-event price is shown on the Pricing tab.

Can I schedule it and get results automatically? Yes - create a Schedule and add a webhook or an integration (Google Sheets, Slack, Make, Zapier) to push each run's dataset wherever you need it.

Which export formats are available? Every run's dataset can be downloaded as JSON, CSV, Excel (XLSX), XML, HTML or RSS from the Apify Console or the API.

Can I run it from code or an AI agent? Yes - through the Apify API and client libraries, or from Claude, ChatGPT and other assistants via the Apify MCP server.

Is it legal to scrape LinkedIn? This Actor collects publicly available data only. You are responsible for using the output in compliance with applicable laws (including data-protection law where personal data is involved) and the source's terms. See Legal and the Disclaimer below.

Is this an official LinkedIn tool? No. It is an independent, third-party Actor with no affiliation to, endorsement by or sponsorship from LinkedIn Corporation. See the Disclaimer below.

This actor reads only what LinkedIn publishes to logged-out visitors. It does not log in, use cookies or session tokens, or attempt to reach private content. Post text and commenter names relate to identifiable people, so if you are in the EU or UK you are the data controller for whatever you do with the output: have a lawful basis, and honour deletion requests. Do not use it for spam.

This actor is not affiliated with, endorsed by, or sponsored by LinkedIn Corporation. LinkedIn is a trademark of LinkedIn Corporation.

Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by LinkedIn Corporation or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.

"LinkedIn" and any related marks are the property of their respective owners and are used here only in a descriptive, nominative sense - to identify the publicly accessible website from which this Actor collects data. This Actor is not an official LinkedIn product, is not authorised or certified by LinkedIn Corporation, and does not distribute LinkedIn software. It collects only publicly available information; you are responsible for ensuring your use of that data complies with applicable laws, regulations and the terms of the source website.

Need help?

Open an issue on the Actor's Issues tab, or visit the Apify help center. Feature requests are welcome - this Actor is actively maintained.