Linkedin Profile Post Scraper
Pricing
$19.99/month + usage
Linkedin Profile Post Scraper
🧑💼 LinkedIn Profile Post Scraper extracts public posts from any profile—text, timestamps, reactions, comments, links & media. ⚙️ Ideal for content analytics, social listening, lead gen, recruiting & competitor tracking. 🚀 Fast, reliable, CSV/JSON-ready.
Pricing
$19.99/month + usage
Rating
0.0
(0)
Developer
ScrapeEngine
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Linkedin Profile Post Scraper
The Linkedin Profile Post Scraper is a fast, reliable LinkedIn post scraper that extracts public posts from any LinkedIn profile (/in/ URLs) — including text, timestamps, reactions, comments, links, and media. It eliminates manual copy‑paste by streaming one structured record per post into an Apify dataset, making it a dependable LinkedIn profile post extractor and LinkedIn post history scraper for CSV/JSON workflows. Built for marketers, developers, data analysts, and researchers, it helps you scrape LinkedIn profile posts at scale for content analytics, social listening, lead generation, recruiting, and competitor tracking — all with automation-ready outputs.
What data / output can you get?
Below are example fields produced for each post record. Results stream in real time and can be exported to JSON, CSV, or Excel from the Apify dataset.
| Data type | Description | Example value |
|---|---|---|
| urn | Unique post URN (activity/share/ugcPost) | urn:li:activity:7132456789012345678 |
| url | Canonical URL to the post | https://www.linkedin.com/feed/update/urn:li:activity:7132456789012345678 |
| text | Post body text | “Excited to share our latest product update 🎉” |
| postedAtTimestamp | UNIX timestamp in ms | 1712845234000 |
| postedAtISO | ISO datetime string | 2026-04-11T09:42:00.000Z |
| timeSincePosted | Human-friendly age | 2d |
| authorFullName | Author name from public metadata | “Jane Doe” |
| authorType | Person or Company | Person |
| authorProfileUrl | Source profile URL | https://www.linkedin.com/in/janedoe |
| authorProfileId | Profile identifier | janedoe |
| authorHeadline | Headline/description from JSON-LD | “Product Manager at Acme” |
| image | Primary image URL (if present) | https://media.licdn.com/dms/image/... |
| images | Up to 5 image URLs per post | ["https://media.licdn.com/dms/image/..."] |
| numLikes | Number of reactions (likes + others) | 24 |
| numComments | Number of comments | 3 |
Bonus fields include:
- type (text or image), author object (firstName, lastName, occupation, id, publicId, trackingId, profileId, picture, backgroundImage)
- authorName, authorTitle, attributes (profile mentions)
- comments and reactions arrays with nested author/profile info
- completeness and sharing flags: commentsTruncated, commentsComplete, reactionsTruncated, canReact, canPostComments, canShare, commentingDisabled, allowedCommentersScope, rootShare, shareAudience, numShares
Exports are ready for analytics in JSON, CSV, or Excel, making this a practical LinkedIn profile feed scraper for dashboards and pipelines.
Key features
-
🚀 Live, streaming output
Pushes each post to the dataset as soon as it’s found — ideal for real-time monitoring with a LinkedIn profile activity scraper. -
🧠 Smart proxy fallback
Automatically escalates from direct → datacenter → residential when blocked (including LinkedIn 999). Residential retries up to 3× for resilient scraping. -
📦 Batch scraping & bulk automation
Add multiple LinkedIn profile URLs to scrape in one run — perfect for a LinkedIn user posts scraper at team or org scale. -
🎯 Controlled scope per profile
Use maxPosts to cap how many posts to extract per URL (1–500). Keep it lean for faster runs or expand for deeper history. -
🖼️ Rich post content capture
Extracts text, timestamps, images, mentions, reactions, and comments with completeness flags — useful for LinkedIn article and post scraper needs. -
💾 Export-ready output
Export LinkedIn posts to CSV, JSON, or Excel from the Apify dataset — no extra transformations required. -
🔌 Developer-friendly
Built on Apify — consume via the Dataset API, or plug into automation tools to create a LinkedIn profile posts API alternative for your stack. -
🛡️ Production-ready reliability
Shared session, warm-up phase, jittered pacing, retry with exponential backoff for 429s, and robust proxy strategy — a dependable LinkedIn post scraping automation foundation.
How to use Linkedin Profile Post Scraper - step by step
- Sign in to Apify and open the actor in the Apify Console.
- Paste one or more LinkedIn profile URLs into the urls field (format: https://www.linkedin.com/in/username). Non-profile URLs are skipped automatically.
- Optionally configure proxyConfiguration to start with a specific proxy setup (by default, it starts direct and falls back if blocked).
- Set maxPosts to control how many posts to collect per profile (1–500).
- Click Start to launch the run. The scraper warms up, probes the target, and adjusts proxies automatically.
- Watch the run logs for progress and any proxy fallback messages.
- Open the Dataset tab to see items streaming live. Download as JSON, CSV, or Excel — or consume via the Apify API.
Pro Tip: Chain this LinkedIn post data extractor with your analytics pipeline or CRM for scheduled enrichment. It’s a flexible LinkedIn post downloader tool for both one-off pulls and recurring jobs.
Use cases
| Use case name | Description |
|---|---|
| Content analytics for marketing | Aggregate profile posts to analyze topics, cadence, and engagement (numLikes, numComments) over time. |
| Social listening & brand tracking | Monitor public profiles for announcements and thought leadership using a LinkedIn profile post extractor. |
| Sales intelligence & lead gen | Export LinkedIn posts to CSV to enrich accounts and contacts with recent activity and talking points. |
| Recruiting & talent research | Track candidate or influencer activity to inform outreach and evaluate audience resonance. |
| Competitor updates monitoring | Scrape LinkedIn profile posts for competitor execs to watch launches, narratives, and community reactions. |
| Academic & trend research | Build datasets of public posts for longitudinal studies, sentiment snapshots, or topic modeling. |
| API pipeline integration | Feed structured post JSON into data warehouses or LLM workflows via the Apify Dataset API. |
Why choose Linkedin Profile Post Scraper?
Engineered for precision, automation, and scalability — a reliable LinkedIn post scraper that outperforms brittle alternatives.
- ✅ Accurate, structured output: Clean fields for post text, timestamps, images, engagement, comments, and mentions.
- 🌍 Public profile focus: Targets publicly available /in/ pages — no login or cookies required.
- 📈 Scales with your needs: Process multiple profiles in one run and limit with maxPosts to fit your workflow.
- 👩💻 Developer-ready: Results live in an Apify dataset for API consumption and automation compatibility.
- 🔁 Resilient to blocking: Automatic proxy fallback from direct to datacenter to residential, with 999 detection and 3× residential retries.
- 🧩 Integration-friendly: Export to CSV/JSON/Excel and plug into ETL, dashboards, or automation platforms.
- 🆚 Scraper vs extension: More stable than a LinkedIn post scraper Chrome extension thanks to infrastructure-backed reliability and logging.
In short, this LinkedIn post data extractor delivers consistent, export-ready outputs for production pipelines.
Is it legal / ethical to use Linkedin Profile Post Scraper?
Yes — when done responsibly. This actor extracts data from publicly available LinkedIn profile pages and does not access private or authenticated content.
Guidelines for responsible use:
- Only scrape publicly visible information and respect privacy.
- Ensure alignment with applicable regulations (e.g., GDPR, CCPA) and LinkedIn’s terms.
- Use results for legitimate purposes (research, analytics, enrichment), not spam or misuse.
- Consult your legal team for edge cases or jurisdiction-specific questions.
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}}
Parameter reference
- 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: none
- maxPosts (integer, optional): Maximum number of posts to collect per URL. Keep lower for faster runs (e.g. 10–50).
- 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: { "useApifyProxy": false }
Example JSON output
{"urn": "urn:li:activity:7132456789012345678","text": "Excited to share our latest product update 🎉","url": "https://www.linkedin.com/feed/update/urn:li:activity:7132456789012345678","postedAtTimestamp": 1712845234000,"postedAtISO": "2026-04-11T09:42:00.000Z","timeSincePosted": "2d","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": "oY3Jf2+QZr0x1aBC","profileId": "janedoe","picture": "https://media.licdn.com/dms/image/...","backgroundImage": ""},"authorName": "Jane Doe","authorTitle": "Product Manager at Acme","attributes": [{"start": 0,"length": 10,"type": "PROFILE_MENTION","profile": {"firstName": "alex","lastName": "","occupation": "","id": "user-0","publicId": "alex","trackingId": "Vb1lK7","profileId": "user-0","picture": "","backgroundImage": ""}}],"comments": [{"time": 1712846000000,"link": "https://www.linkedin.com/feed/update/urn:li:activity:7132456789012345678","text": "Congrats!","entities": [],"pinned": false,"originalLanguage": "English","author": {"firstName": "John","lastName": "Smith","occupation": "","id": "commenter-a1b2c3d4e5f6","publicId": "john-smith","trackingId": "rN2pQ","profileId": "commenter-a1b2c3d4e5f6","picture": "","backgroundImage": "","distance": "OUT_OF_NETWORK"}}],"reactions": [{"type": "LIKE","profile": {"firstName": "Alex","lastName": "Lee","occupation": "","id": "reactor-9f8e7d6c5b4a","publicId": "alex-lee-12345","trackingId": "kT9mH","profileId": "ACoAA9f8e7d6c","picture": "","backgroundImage": ""}}],"numShares": 0,"numLikes": 24,"numComments": 3,"commentsTruncated": true,"commentsComplete": false,"reactionsTruncated": true,"canReact": true,"canPostComments": true,"canShare": true,"commentingDisabled": false,"allowedCommentersScope": "ALL","rootShare": true,"shareAudience": "PUBLIC"}
Notes:
- Some fields (e.g., authorFullName, authorHeadline, picture) depend on public JSON-LD/meta availability; when missing, they may be empty or “Unknown”.
- comments and reactions may be partial; use commentsTruncated and reactionsTruncated to assess completeness.
FAQ
Do I need to log in to scrape LinkedIn profile posts?
No. This LinkedIn user posts scraper collects data from publicly available profile pages and does not require login or cookies.
What URLs are supported?
Only LinkedIn profile URLs under /in/ are supported (for example, https://www.linkedin.com/in/username). Non-profile URLs are skipped automatically during a run.
How many posts can I scrape per profile?
You control this with maxPosts. It accepts 1–500 per URL and defaults to 10, letting you balance speed and depth.
Does it export to CSV or JSON?
Yes. Results stream to an Apify dataset that you can export as JSON, CSV, or Excel. It’s a straightforward LinkedIn post data extractor for analytics and enrichment.
Does it capture comments and reactions?
Yes. It extracts comments and reactions where available, plus engagement counts (numLikes, numComments). Use commentsTruncated and reactionsTruncated to see if the lists are partial.
How does it handle LinkedIn blocking (e.g., 999)?
The actor probes and falls back automatically: direct → datacenter → residential proxies. It detects 999 and switches accordingly, then performs residential retries up to 3× for robustness.
Can developers integrate this into pipelines or code?
Yes. Consume the dataset via the Apify API to build a LinkedIn posts scraper Python workflow, or connect through automation platforms to fit your stack.
Is there a free trial or plan?
On the Apify Store, this actor includes trial minutes (e.g., 120 trial minutes) and offers a flat monthly plan. See the actor’s listing for current pricing and allowances.
Is it legal to scrape LinkedIn posts?
Yes — when you only collect publicly available information and use it responsibly. Ensure compliance with data protection laws and LinkedIn’s terms, and consult your legal team for your specific use case.
Closing CTA / Final thoughts
The Linkedin Profile Post Scraper is built to extract structured, export-ready post data from public LinkedIn profiles at scale. With streaming outputs, resilient proxy fallback, and clean JSON fields, it’s ideal for marketers, analysts, recruiters, and developers who need a dependable LinkedIn profile post extractor. Run it on multiple profiles, cap depth with maxPosts, and export to CSV/JSON for dashboards or enrichment. Developers can plug the dataset into APIs and automation for end‑to‑end pipelines — start extracting smarter insights from public LinkedIn activity today.