Linkedin Post Scraper avatar

Linkedin Post Scraper

Pricing

$19.99/month + usage

Go to Apify Store
Linkedin Post Scraper

Linkedin Post Scraper

Extract data from LinkedIn posts using this scraper. Collect post text, author details, post URLs, likes, comments, shares, and timestamps. Useful for content research, lead generation, brand monitoring, competitor analysis, and tracking engagement on LinkedIn posts.

Pricing

$19.99/month + usage

Rating

0.0

(0)

Developer

ScrapAPI

ScrapAPI

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

10 days ago

Last modified

Share

Linkedin Post Scraper

Linkedin Post Scraper is an Apify actor that extracts structured data from public LinkedIn posts at scale — a LinkedIn post scraper tool built for marketers, developers, data analysts, and researchers. It helps you scrape LinkedIn posts from company pages, personal profiles, or the public feed quickly and safely, capturing post text, author details, engagement signals, and media for downstream analysis. With automation-friendly design and export-ready output, it enables always-on content intelligence and LinkedIn post engagement scraper workflows at scale. 🚀

What data / output can you get?

Below are the actual fields the actor saves to the dataset for each post. You can export results to JSON, CSV, or Excel via Apify dataset exports.

Data typeDescriptionExample value
urnCanonical LinkedIn URN (activity/share/ugcPost)urn:li:activity:7382543708363317248
textFull post text contentAnnouncing our latest product update…
urlShareable URL of the posthttps://www.linkedin.com/feed/update/urn:li:activity:7382543708363317248
postedAtTimestampPublish time in epoch milliseconds1760135581074
postedAtISOPublish time in ISO-86012025-10-10T22:33:01.074000Z
timeSincePostedHuman-readable age10h
authorTypePerson or CompanyCompany
authorProfileUrlSource profile/page URL scrapedhttps://www.linkedin.com/company/google/
authorProfileIdProfile identifier derived from URL or metadatagoogle
authorHeadlineAuthor headline/description when availableBuilding products for everyone…
authorFullNameAuthor display name when availableGoogle
typePost type heuristic (text or image)image
imagePrimary image URL if presenthttps://media.licdn.com/dms/image/...
imagesArray of image URLs (up to 5)["https://media.licdn.com/dms/image/…"]
attributesMention entities extracted from text/HTML[{ "type": "PROFILE_MENTION", … }]
commentsArray of comment objects with author metadata[{ "text": "Great news!", … }]
reactionsArray of reactions with reactor profiles[{ "type": "LIKE", … }]
numLikesParsed count of reactions/likes123
numCommentsParsed count of comments14
numSharesParsed share count (0 if not found)0
commentsTruncatedTrue if only a subset of comments is includedtrue
commentsCompleteTrue if all comments are includedfalse
reactionsTruncatedTrue if only a subset of reactions is includedtrue
canReactCapability flag inferred from pagetrue
canPostCommentsCapability flag inferred from pagetrue
canShareCapability flag inferred from pagetrue
commentingDisabledCapability flag inferred from pagefalse
allowedCommentersScopeAllowed commenter scope (when available)ALL
rootShareRoot share flag (when available)true
shareAudienceAudience label (when available)PUBLIC
authorNested author object (see example below){ "publicId": "google", … }

Bonus:

  • When rawData is true, the actor also includes rawHtml: the full HTML string of the page the post was parsed from.
  • Comments and reactions include rich nested author/actor profiles to power a LinkedIn post comments scraper and LinkedIn post analytics scraper workflows.

Key features

  • ✨ Accurate post extraction
    • Robust parsing of JSON-LD, HTML, and Open Graph fallbacks to reliably scrape LinkedIn posts and capture text, timestamps, and media.
  • 💬 Engagement & comments capture
    • Collect numLikes, numComments, plus arrays of reactions and comments with author profiles — ideal for a LinkedIn post engagement scraper.
  • 🔎 Deep scrape option
    • Toggle deepScrape to traverse post URNs on the feed and gather more posts per source with a BFS strategy for a powerful LinkedIn feed scraper.
  • 📦 Clean, structured output
    • Consistent JSON structure per post, with nested author, reactions, and comments — ready for analytics and “LinkedIn posts to CSV” exports.
  • 🔌 Automation & integrations
    • Works seamlessly with the Apify API and automation tools like n8n and Make.com for recurring LinkedIn post scraping API runs.
  • 🛡️ Optional proxy support
    • Configure proxyConfiguration to improve reliability and reduce rate-limit risks during batch runs.
  • 🧑‍💻 Developer-friendly
    • Build pipelines in your language of choice. Use the Apify API from Python for a robust Python LinkedIn post scraper or data engineering workflows.
  • 🏗️ Production-ready infrastructure
    • Resilient retry logic, backoff for 429s, and dataset streaming support ensure stable, large-scale extractions.

How to use Linkedin Post Scraper - step by step

  1. Sign in to Apify
  • Create or log in to your Apify account to run the actor.
  1. Open the actor
  • Find “Linkedin Post Scraper” in the Apify Store and open it.
  1. Add input data
  1. Set limits and filters
  • limitPerSource: choose how many posts to collect per URL (default 10).
  • scrapeUntil: optionally pick a date (YYYY-MM-DD) to include only posts from that date onward.
  1. Choose scraping depth
  • deepScrape: enable to crawl related post pages and find more posts; disable for a lighter, faster run.
  1. Advanced options
  • rawData: enable to include rawHtml in each output item (for power users).
  • proxyConfiguration: optionally configure a proxy to improve stability and throughput.
  1. Run the actor
  • Click “Start”. The run will begin, fetch posts, and stream items into the dataset in real time.
  1. Download your results
  • Go to the Dataset tab and export your results to JSON, CSV, or Excel for analysis, BI, or CRM ingestion.

Pro Tip: Schedule the actor and connect it via the Apify API to your data stack or automation tools (n8n, Make.com) to keep your LinkedIn post extractor pipeline fresh.

Use cases

Use caseDescription
Marketing content benchmarkingCompare formats, hooks, and engagement across competitors by exporting LinkedIn posts to CSV and analyzing numLikes and numComments.
Social listening & brand monitoringTrack brand mentions and comments to understand audience sentiment using the LinkedIn post comments scraper output.
Sales & demand gen insightsIdentify high-engagement topics and personas from company page posts with a LinkedIn company page posts scraper.
Recruitment marketing analysisMeasure employer-brand engagement on profile posts with a LinkedIn profile posts scraper for talent attraction insights.
Competitive analysis & strategyMonitor product launches and campaigns by scraping LinkedIn posts regularly and aggregating engagement metrics.
Research & academiaBuild clean datasets of public posts for trend analysis and NLP experiments using the LinkedIn post scraping API.
Data engineering pipelines (API)Automate extraction with schedules and webhooks, push results into warehouses or lakes for post analytics dashboards.

Why choose Linkedin Post Scraper?

Built for precision and scale, Linkedin Post Scraper delivers clean, analytics-ready post data without risky, manual tooling.

  • 🎯 Accurate field coverage: Timestamps, URLs, author metadata, images, comments, reactions, and engagement counts.
  • 🧩 Flexible exports: Natively export from the Apify dataset to JSON, CSV, or Excel for easy downstream use.
  • ⚙️ Automation-first: Compatible with Apify API, n8n, and Make.com to automate a LinkedIn post data scraper pipeline.
  • 🧑‍💻 Developer access: Call the actor programmatically for a reliable Python LinkedIn post scraper workflow.
  • 🔒 Safe & stable: Optional proxy support and built-in backoff for 429s; no login or cookies needed for public data.
  • 💪 Scalable depth: deepScrape mode explores more posts per source with a BFS traversal for richer datasets.
  • 🧠 Structured insights: Ideal for a LinkedIn post analytics scraper that powers BI dashboards and models.

Is it legal / ethical to use Linkedin Post Scraper?

Yes — when done responsibly. This actor is designed to collect publicly visible LinkedIn content and does not access private data or credentials.

Guidelines:

  • Collect only public post data from company pages, public profiles, or the public feed.
  • Avoid restricted or private profiles and respect platform policies.
  • Ensure compliance with data protection laws (e.g., GDPR, CCPA) and your organization’s legal guidance.
  • Use results for analysis and insights, not for spam or misuse.

Input parameters & output format

Example JSON input

{
"urls": [
"https://www.linkedin.com/company/google/"
],
"limitPerSource": 10,
"scrapeUntil": "2025-10-01",
"deepScrape": true,
"rawData": false
}

All input fields

  • urls (array of strings, required)
    • Description: Add LinkedIn company or person profile URLs to scrape — one or many!
    • Default: none
  • limitPerSource (integer)
    • Description: How many posts to collect from each URL. More = more data!
    • Default: 10 (minimum: 1)
  • scrapeUntil (string, YYYY-MM-DD, nullable)
    • Description: Filter posts — only include content from this date onwards. Pick from calendar!
    • Default: none
  • deepScrape (boolean)
    • Description: Scrape additional information. Get richer data — more metadata & engagement details.
    • Default: true
  • rawData (boolean)
    • Description: Get raw data (Advanced). Include extra raw data in output. Turn off for cleaner results.
    • Default: false
  • proxyConfiguration (object, nullable)
    • Description: Proxy configuration. Optional — use proxy for better reliability & to avoid rate limits.
    • Default: none

Example JSON output

[
{
"urn": "urn:li:activity:7382543708363317248",
"text": "This week we introduced new features to improve workflows.",
"url": "https://www.linkedin.com/feed/update/urn:li:activity:7382543708363317248",
"postedAtTimestamp": 1760135581074,
"postedAtISO": "2025-10-10T22:33:01.074000Z",
"timeSincePosted": "10h",
"isRepost": false,
"authorType": "Company",
"authorProfileUrl": "https://www.linkedin.com/company/example/",
"authorProfileId": "example",
"authorHeadline": "Building products for everyone.",
"authorFullName": "Example Inc.",
"image": "https://media.licdn.com/dms/image/…/image1.jpg",
"type": "image",
"images": [
"https://media.licdn.com/dms/image/…/image1.jpg",
"https://media.licdn.com/dms/image/…/image2.jpg"
],
"author": {
"firstName": null,
"lastName": null,
"occupation": "Building products for everyone.",
"id": "example",
"publicId": "example",
"trackingId": "G8b4Qw1x2YzA3B5C",
"profileId": "example",
"picture": "https://media.licdn.com/dms/image/…/logo.jpg",
"backgroundImage": ""
},
"authorName": "Example Inc.",
"authorTitle": "Building products for everyone.",
"attributes": [
{
"start": 0,
"length": 8,
"type": "PROFILE_MENTION",
"profile": {
"firstName": "john",
"lastName": "",
"occupation": "",
"id": "user-0",
"publicId": "john",
"trackingId": "b9K2mQ7nPzL1XcV",
"profileId": "user-0",
"picture": "",
"backgroundImage": ""
}
}
],
"comments": [
{
"time": 1760173874033,
"link": "https://www.linkedin.com/feed/update/urn:li:activity:7382543708363317248",
"text": "Great news!",
"entities": [],
"pinned": false,
"originalLanguage": "English",
"author": {
"firstName": "Jane",
"lastName": "Doe",
"occupation": "",
"id": "commenter-0f5d3a1b2c9e",
"publicId": "jane-doe",
"trackingId": "H1x2y3Z4A5B6C7D",
"profileId": "commenter-0f5d3a1b2c9e",
"picture": "",
"backgroundImage": "",
"distance": "OUT_OF_NETWORK"
}
}
],
"reactions": [
{
"type": "LIKE",
"profile": {
"firstName": "Alex",
"lastName": "Smith",
"occupation": "",
"id": "reactor-a1b2c3d4e5f6",
"publicId": "alex-smith",
"trackingId": "P0Q1R2S3T4U5V6W",
"profileId": "ACoAAa1b2c3d4",
"picture": "",
"backgroundImage": ""
}
}
],
"numShares": 0,
"numLikes": 123,
"numComments": 14,
"commentsTruncated": true,
"commentsComplete": false,
"reactionsTruncated": true,
"canReact": true,
"canPostComments": true,
"canShare": true,
"commentingDisabled": false,
"allowedCommentersScope": "ALL",
"rootShare": true,
"shareAudience": "PUBLIC"
}
]

Notes:

  • When rawData is true, each item also includes rawHtml with the page’s HTML string.
  • Some fields may be empty or “Unknown” if not present on the public page (e.g., authorHeadline, images).
  • numShares may be 0 when no share count is detected.

FAQ

Is a login or cookies required to scrape LinkedIn posts?

No. The actor works with publicly available content and does not require login or cookies. For reliability at scale, you can optionally enable proxyConfiguration.

What LinkedIn URLs are supported?

The actor supports public company pages, person profiles, and the public feed. Provide LinkedIn URLs in the urls array to run a LinkedIn company page posts scraper or LinkedIn profile posts scraper workflow.

Can it collect comments and reactions?

Yes. The output includes comments and reactions arrays when available, along with numLikes and numComments. Flags like commentsTruncated and reactionsTruncated indicate if only a subset was captured.

How do I export LinkedIn posts to CSV?

After the run completes, open the dataset and export to CSV, JSON, or Excel in one click. This makes it easy to feed BI tools and downstream pipelines.

How many posts can I extract per source?

Set limitPerSource to control how many posts are collected from each URL (default 10, minimum 1). Enable deepScrape to traverse related post pages for broader coverage.

Can I filter by date?

Yes. Use scrapeUntil (YYYY-MM-DD) to include only posts from that date onward. Older posts are skipped during streaming and won’t be added to the dataset.

Does it support automation and APIs?

Yes. It’s built for automation with the Apify platform. Trigger runs via the Apify API and connect to n8n or Make.com for a repeatable LinkedIn post scraping API pipeline.

Can I use it from Python?

Yes. Call the Apify API from Python to orchestrate runs and fetch dataset results, enabling a robust Python LinkedIn post scraper workflow in your data stack.

Final thoughts

Linkedin Post Scraper is built to turn public LinkedIn posts into clean, structured, analysis-ready data. It captures post text, authors, timestamps, media, and engagement signals — and exports seamlessly to CSV, JSON, or Excel. Whether you’re a marketer benchmarking content, a researcher analyzing trends, or a developer building a pipeline, it’s an automation-ready LinkedIn post extractor with reliable depth options. Integrate via the Apify API, schedule runs, and start extracting smarter today.