Linkedin Profile Post Scraper avatar

Linkedin Profile Post Scraper

Pricing

$19.99/month + usage

Go to Apify Store
Linkedin Profile Post Scraper

Linkedin Profile Post Scraper

🧑‍💼 LinkedIn Profile Post Scraper grabs posts from public profiles—text, timestamps, reactions, comments, shares, hashtags, links & media. 📊 Export CSV/JSON for analytics, outreach & competitive research. 🚀 Ideal for marketing, sales & personal branding.

Pricing

$19.99/month + usage

Rating

0.0

(0)

Developer

ScrapeFlow

ScrapeFlow

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

11 days ago

Last modified

Share

Linkedin Profile Post Scraper

The Linkedin Profile Post Scraper is a purpose-built tool that collects posts from public LinkedIn profile pages, then structures them with post text, timestamps, media, reactions, and comments for analysis and outreach. It solves the pain of manual copy-paste and unreliable tools by providing a dependable LinkedIn profile posts scraper and LinkedIn post extractor that works at scale for marketers, sales teams, researchers, and developers. With automatic resilience and live outputs, you can scrape LinkedIn posts from a profile and turn them into actionable insights fast.

What data / output can you get?

Below are examples of the structured fields this LinkedIn content scraper for profiles returns. Each dataset item corresponds to a single post.

Data typeDescriptionExample value
urnLinkedIn post URN identifier parsed or generatedurn:li:activity:7123456789012345678
urlCanonical post URL when available (or OG URL fallback)https://www.linkedin.com/feed/update/urn:li:activity:7123456789
textPost body text extracted from JSON-LD or OG tagsExcited to announce our new product launch 🚀
postedAtISOISO timestamp string if available2026-04-10T15:25:30.000000Z
timeSincePostedRelative time derived from published date3d
authorFullNameAuthor’s full name from JSON-LD or OG titleJane Doe
authorTypeAuthor entity type (Person or Company)Person
authorProfileUrlSource profile URL used for scrapinghttps://www.linkedin.com/in/janedoe
authorProfileIdParsed profile identifier for the authorjanedoe
authorHeadlineAuthor’s description/headline if presentProduct Manager at Acme
imageFirst image URL if the post contains mediahttps://media.licdn.com/dms/image/…
imagesArray of media URLs detected in the post["https://media.licdn.com/dms/image/…"]
numLikesParsed reaction count (likes/reactions)128
numCommentsParsed comment count17
commentsArray of extracted top comments (may be truncated)[{ "text": "Congrats!", … }]
reactionsArray of sampled reactors with reaction type[{ "type": "LOVE", … }]
attributesDetected @mentions and profile mentions[{ "type": "PROFILE_MENTION", … }]
authorNested author object with basic metadata{ "firstName": "Jane", … }
flagsBooleans for sharing, commenting, truncationcommentsTruncated: true

Notes:

  • Posts may include additional metadata like shareAudience, allowedCommentersScope, or booleans such as canReact and commentingDisabled.
  • Export results in the Apify dataset and download as CSV or JSON for pipelines like analytics, enrichment, and reporting.

Key features

  • 🔁 Automatic proxy fallback for reliability
    Begins with a direct connection and seamlessly escalates to datacenter → residential proxy when blocked (including LinkedIn 999 handling), keeping your run resilient.

  • ⚡ Live, incremental output
    Each post is pushed to the dataset as soon as it’s discovered, giving you real-time visibility for monitoring and faster QA.

  • 📦 Batch processing of multiple profiles
    Add many LinkedIn profile URLs and process them in one run—ideal for teams running outreach or benchmarking content across profiles.

  • 🖼️ Rich post content & engagement signals
    Captures post text, timestamps, images, reaction counts, and sampled commenters/reactors—perfect for a LinkedIn profile activity scraper or LinkedIn post insights extractor.

  • 🧭 Smart post discovery
    Starts from the profile page, parses post identifiers, and follows feed pages to surface more items—great for a LinkedIn feed scraper focused on profile activity.

  • 🛠️ Developer- and workflow-friendly
    Results land in an Apify dataset you can fetch via API, export to CSV/JSON, and plug into analytics stacks—an effective LinkedIn profile posts API alternative.

  • 🧱 Production-grade stability
    Built with retry/backoff for 429s, warm-up routines, and shared session handling to automate scraping LinkedIn profile posts reliably at scale.

How to use Linkedin Profile Post Scraper - step by step

  1. Sign in to Apify and open the actor
    Go to Apify Console → Actors and select Linkedin Profile Post Scraper.

  2. Add your input URLs
    Paste one or more LinkedIn profile URLs (format: https://www.linkedin.com/in/USERNAME). Non-profile URLs are skipped by design.

  3. Set extraction limits
    Configure maxPosts to cap how many posts you collect per profile. Lower values run faster.

  4. Configure proxy (optional)
    By default, the actor starts with no proxy and automatically falls back if blocked. You can explicitly enable Apify Proxy in proxyConfiguration if you need a specific setup.

  5. Start the run
    Click Start. The run will warm up, fetch each profile, and begin pushing posts to the output dataset live.

  6. Monitor progress
    Watch the Log for proxy strategy messages and for the “Output table” progress updates as posts are stored.

  7. Export your data
    Open the Dataset in the Output tab and export to CSV or JSON for downstream use in analytics, CRMs, or reporting tools.

Pro Tip: Connect the dataset via the Apify API to automate pipelines for a LinkedIn posts data extraction tool—e.g., schedule runs and push results into your BI stack.

Use cases

Use case nameDescription
Marketing content analysisBenchmark competitors’ post cadence, topics, and engagement by exporting LinkedIn profile posts to CSV for dashboards.
Sales intelligenceEnrich accounts and prospects with recent activity signals from a LinkedIn user posts scraper to time outreach.
Personal branding researchTrack influencers’ content and engagement using a LinkedIn posts downloader for trend and format analysis.
Academic & social researchCollect public profile activity via a LinkedIn activity data scraper for sentiment, topic modeling, and network studies.
Editorial & curationSurface noteworthy posts from industry leaders using a LinkedIn post extractor and curate weekly digests.
Data engineering pipelineAutomate scraping LinkedIn profile posts and feed structured JSON into your data lake for modeling and alerts.

Why choose Linkedin Profile Post Scraper?

This tool prioritizes precision, automation, and resilience for high-quality post data at scale.

  • 🎯 Accurate, structured output: Clean fields for identifiers, text, timestamps, media, and engagement—ready for analysis.
  • 🚀 Scalable batch runs: Process many profiles in one go with robust retry/backoff and live outputs.
  • 🔌 Developer access: Pull datasets programmatically and integrate with your internal systems as a LinkedIn profile posts API alternative.
  • 🛡️ Ethical focus: Targets publicly available profile posts only and avoids private/authenticated data.
  • 🔁 Built-in fallback: Direct → datacenter → residential proxy sequence mitigates blocks, including handling status 999.
  • 💾 Flexible exports: Download CSV or JSON for BI tools and CRMs without extra transformation.
  • 🧩 Works with your workflows: Ideal as a LinkedIn profile activity scraper or LinkedIn post comments scraper within existing automation.

Bottom line: a reliable, production-ready LinkedIn posts data extraction tool that outperforms brittle, manual alternatives.

Is it legal / ethical to use Linkedin Profile Post Scraper?

Yes—when used responsibly. This actor collects data from publicly available LinkedIn profile pages and does not access private or authenticated content.

Recommended guidelines:

  • Collect only public information and respect individual privacy.
  • Ensure your use complies with applicable laws and regulations (e.g., GDPR, CCPA).
  • Review and respect LinkedIn’s terms where relevant.
  • Consult your legal team for edge cases or commercial re-use.

Input parameters & output format

Example JSON input

{
"urls": [
"https://www.linkedin.com/in/ajjames",
"https://www.linkedin.com/in/satyanadella"
],
"maxPosts": 10,
"proxyConfiguration": {
"useApifyProxy": false
}
}

Parameters

  • urls (array, required): Add one or more LinkedIn profile URLs to scrape (e.g., personal profile pages). Paste each URL on a new line. Default: not set.
  • maxPosts (integer, optional): Maximum number of posts to collect per URL. Range: 1–500. Default: 10.
  • proxyConfiguration (object, optional): By default uses no proxy. If LinkedIn blocks requests, the actor will automatically try datacenter then residential proxy. Optional: enable Apify Proxy here to start with a specific setup. Default: not set.

Example JSON output (single post item)

{
"urn": "urn:li:activity:7123456789012345678",
"text": "Excited to announce our new product launch 🚀",
"url": "https://www.linkedin.com/feed/update/urn:li:activity:7123456789012345678",
"postedAtTimestamp": 1712753130000,
"postedAtISO": "2026-04-10T15:25:30.000000Z",
"timeSincePosted": "3d",
"isRepost": false,
"authorType": "Person",
"authorProfileUrl": "https://www.linkedin.com/in/janedoe",
"authorProfileId": "janedoe",
"authorHeadline": "Product Manager at Acme",
"authorFullName": "Jane Doe",
"image": "https://media.licdn.com/dms/image/...",
"type": "image",
"images": [
"https://media.licdn.com/dms/image/..."
],
"author": {
"firstName": "Jane",
"lastName": "Doe",
"occupation": "Product Manager at Acme",
"id": "janedoe",
"publicId": "janedoe",
"trackingId": "ZXhhbXBsZXRyYWNrSWQ",
"profileId": "janedoe",
"picture": "https://media.licdn.com/dms/image/...",
"backgroundImage": ""
},
"authorName": "Jane Doe",
"authorTitle": "Product Manager at Acme",
"attributes": [
{
"start": 0,
"length": 6,
"type": "PROFILE_MENTION",
"profile": {
"firstName": "Acme",
"lastName": "",
"occupation": "",
"id": "reactor-1a2b3c4d5e6f",
"publicId": "acme",
"trackingId": "ZXhhbXBsZXRyYWNrSWQ",
"profileId": "ACoAA1a2b3c4d",
"picture": "",
"backgroundImage": ""
}
}
],
"comments": [
{
"time": 1713000000000,
"link": "https://www.linkedin.com/feed/update/urn:li:activity:7123456789012345678",
"text": "Congrats!",
"entities": [],
"pinned": false,
"originalLanguage": "English",
"author": {
"firstName": "Alex",
"lastName": "Smith",
"occupation": "",
"id": "commenter-12ab34cd56ef",
"publicId": "alex-smith",
"trackingId": "ZXhhbXBsZXRyYWNrSWQ",
"profileId": "commenter-12ab34cd56ef",
"picture": "",
"backgroundImage": "",
"distance": "OUT_OF_NETWORK"
}
}
],
"reactions": [
{
"type": "LOVE",
"profile": {
"firstName": "Chris",
"lastName": "Lee",
"occupation": "",
"id": "reactor-89ab01cd23ef",
"publicId": "chris-lee-1234",
"trackingId": "ZXhhbXBsZXRyYWNrSWQ",
"profileId": "ACoAA89ab01cd",
"picture": "",
"backgroundImage": ""
}
}
],
"numShares": 0,
"numLikes": 128,
"numComments": 17,
"commentsTruncated": true,
"commentsComplete": false,
"reactionsTruncated": true,
"canReact": true,
"canPostComments": true,
"canShare": true,
"commentingDisabled": false,
"allowedCommentersScope": "ALL",
"rootShare": true,
"shareAudience": "PUBLIC"
}

Notes:

  • Some fields may be empty or “Unknown” if not present on the public page (e.g., authorHeadline).
  • Comments and reactions are sampled; use commentsTruncated and reactionsTruncated to see if totals exceed the captured arrays.

FAQ

Do I need to provide login or cookies to run this?

No. The actor targets publicly available LinkedIn profile posts without requiring login. It establishes a session and uses proxy fallback strategies to navigate blocks when necessary.

Can it scrape posts from companies or groups?

No. This tool specifically supports LinkedIn profile URLs that contain /in/. Non-profile URLs (e.g., /company/, /groups/) are skipped by design.

How many posts can I collect per profile?

You control this via maxPosts. It accepts 1–500 and defaults to 10. Smaller limits run faster and reduce the chance of rate limits.

Does it capture images, comments, and reactions?

Yes. It extracts images and basic engagement signals. Top comments and sampled reactors are included where available, with flags indicating if arrays are truncated relative to total counts.

What formats can I export to?

Results are stored in the Apify dataset. You can download your data as CSV or JSON or access it programmatically via the Apify API for pipelines.

How does it handle LinkedIn blocks (e.g., 999)?

The actor automatically escalates its connection strategy: direct → datacenter proxy → residential proxy. It includes retry/backoff logic, warm-up requests, and special handling for status 999 to maximize success.

Is this a LinkedIn API?

No. It’s a scraping-based LinkedIn profile posts API alternative that collects public profile posts and structures them for analytics and workflows.

Can I run multiple profiles in one job?

Yes. Paste multiple LinkedIn profile URLs in the urls array input to process them in a single run.

Closing CTA / Final thoughts

Linkedin Profile Post Scraper is built to turn public LinkedIn profile activity into clean, structured datasets for analytics, enrichment, and outreach. With resilient proxy fallback, live outputs, and rich engagement details, it’s ideal for marketers, sales teams, analysts, and researchers who need a dependable LinkedIn profile posts scraper. Developers can automate end-to-end flows by pulling datasets via the Apify API and piping CSV/JSON exports into BI or CRM systems. Start extracting smarter LinkedIn post insights today and scale your content intelligence with confidence.