Linkedin Profile Post Scraper
Pricing
$19.99/month + usage
Linkedin Profile Post Scraper
🔎 LinkedIn Profile Post Scraper extracts posts from public profiles — text, images/videos, links, hashtags, mentions, timestamps & engagement metrics. 🚀 Ideal for content analysis, social selling, and competitor intel. 📈 Export CSV/JSON; API-ready.
Pricing
$19.99/month + usage
Rating
0.0
(0)
Developer
ScrapeMesh
Actor stats
0
Bookmarked
3
Total users
2
Monthly active users
6 days ago
Last modified
Categories
Share
Linkedin Profile Post Scraper
The Linkedin Profile Post Scraper is a fast, resilient LinkedIn post scraper that extracts recent posts from public LinkedIn profile pages into clean, structured records — including post text, images, timestamps, author details, and engagement counts. It helps teams scrape LinkedIn profile posts reliably with a proxy fallback pipeline, making it ideal for marketers, developers, data analysts, and researchers. Use this LinkedIn profile post scraper for content analysis, social selling intelligence, and monitoring thought-leadership at scale. 🚀
What data / output can you get?
Below are the key fields this LinkedIn profile posts scraper returns. Each dataset item represents a single post.
| Data type | Description | Example value |
|---|---|---|
| urn | LinkedIn URN identifier resolved from post URL | urn:li:activity:1234567890123456789 |
| url | Canonical post URL (from JSON-LD/Open Graph) | https://www.linkedin.com/feed/update/urn:li:activity:1234567890 |
| text | Post body text extracted from the page | Excited to share our latest research on AI safety… |
| postedAtTimestamp | Unix timestamp in milliseconds | 1712323200000 |
| postedAtISO | ISO-8601 datetime string | 2024-04-05T13:20:15.000000Z |
| timeSincePosted | Human-friendly relative time | 3d |
| authorType | “Person” or “Company” (inferred from author data) | Person |
| authorProfileUrl | The profile URL the crawl started from | https://www.linkedin.com/in/username |
| authorProfileId | Profile identifier derived from URL | username |
| authorFullName | Author name parsed from JSON-LD/OG | Ada Lovelace |
| authorHeadline | Author headline/description (if available) | CTO at Example Labs |
| image | Primary image for the post if present | https://media.licdn.com/dms/image/…/post-image.jpg |
| images | Array of post images (up to 5) | ["https://media.licdn.com/dms/image/…/1.jpg"] |
| numLikes | Reaction/like count parsed from page | 142 |
| numComments | Comment count parsed from page | 12 |
Bonus fields include:
- author object with detailed metadata (firstName, lastName, occupation, picture, publicId, profileId, trackingId, backgroundImage)
- attributes array with detected mentions
- comments array with sampled comment items (author, text, link, time, entities, pinned, originalLanguage, author.distance)
- reactions array with sampled reaction items (type + reactor profile)
- flags and capabilities (commentsTruncated, commentsComplete, reactionsTruncated, canReact, canPostComments, canShare, commentingDisabled, allowedCommentersScope, rootShare, shareAudience)
- numShares and post type (“image” or “text”)
Results are stored in an Apify dataset, ready to export as CSV or JSON for downstream analysis and pipelines.
Key features
-
🔄 Resilient proxy cascade (direct → datacenter → residential)
Automatically escalates from no proxy to datacenter and then residential proxies when blocked (incl. 999). Profile pages use residential from the start for better stability. -
⚡ Live dataset streaming
Each post is pushed to the dataset in real time as it’s discovered, enabling incremental processing and faster feedback loops. -
📥 Multi-URL batching
Add multiple LinkedIn profile URLs in one run to scale your LinkedIn posts crawler across many targets. -
🧠 Robust extraction logic
Combines JSON-LD parsing, Open Graph fallback, and HTML selectors to capture post text, timestamps, images, mentions, reactions, and comment snippets. -
🧰 API-ready and automation friendly
Output lands in an Apify dataset, making it simple to integrate this LinkedIn profile post extractor with your data workflows and automation stacks via the Apify API. -
🛡️ Built-in retries and backoff
Handles rate limits and transient failures with exponential backoff and multi-retry sequencing, improving success rates on large runs.
How to use Linkedin Profile Post Scraper - step by step
- Sign up or log in to your Apify account.
- Open the actor “Linkedin Profile Post Scraper” in Apify Console.
- Paste one or more LinkedIn profile URLs into the urls list (must be profile pages containing “/in/”).
- Set maxPosts to control how many posts to collect per profile (between 1 and 500; default 10).
- (Optional) Configure proxyConfiguration — by default the actor starts without a proxy and falls back automatically if blocked.
- Click Start to run. The scraper warms up, chooses the right proxy strategy, and begins fetching posts.
- Watch the “Output” tab’s dataset table update live as posts are found.
- Export your results to CSV or JSON from the dataset, or fetch them via the Apify API.
Pro Tip: Use this LinkedIn posts scraping tool on multiple profiles to monitor competitors’ content performance or to extract LinkedIn posts by user for your analytics pipeline.
Use cases
| Use case | Description |
|---|---|
| Content analysis for marketing | Track posting cadence, themes, and engagement by exporting LinkedIn profile posts to CSV/JSON for dashboards. |
| Social selling insights | Extract recent posts by prospects to personalize outreach with timely, relevant context. |
| Competitor intel | Monitor competitor leaders’ posts to analyze messaging, product announcements, and audience reactions. |
| Brand/thought leadership tracking | Follow executives’ activity to benchmark influence and content strategy. |
| Academic research | Collect public posts from target profiles for sentiment, topic modeling, and network analysis. |
| API-powered enrichment | Feed structured post data into internal APIs or data lakes to enrich profiles and analytics. |
Why choose Linkedin Profile Post Scraper?
This LinkedIn post extractor is built for precision and reliability, combining robust parsing with resilient access strategies.
- 🎯 Accuracy you can trust: Structured fields from JSON-LD with Open Graph fallback plus targeted HTML selectors.
- 📈 Scales with your needs: Paste multiple profile URLs and set maxPosts to fit your throughput and budget.
- 🔌 Developer-friendly & API-ready: Results in an Apify dataset for easy programmatic access and automation.
- 🧱 No-login operation: Scrapes publicly available profile posts without cookies or session auth.
- 🔐 Reliable access: Automatic proxy fallback (direct → datacenter → residential), with profile-first residential strategy to reduce 999 blocks.
- 💸 Cost-conscious: Control volume via maxPosts and leverage built-in backoff to reduce retries.
In short, this LinkedIn profile posts scraper delivers production-ready stability without the fragility of manual browser extensions or ad-hoc scripts.
Is it legal / ethical to use Linkedin Profile Post Scraper?
Yes — when used responsibly. This actor works on publicly available LinkedIn profile pages and does not access private or authenticated data. Always:
- Scrape only public information you’re allowed to process.
- Comply with privacy and data protection laws (e.g., GDPR, CCPA).
- Review and respect LinkedIn’s terms applicable to your use case.
- Consult your legal team for edge cases and jurisdiction-specific requirements.
Input parameters & output format
Example JSON input
{"urls": ["https://www.linkedin.com/in/username1","https://www.linkedin.com/in/username2"],"maxPosts": 10,"proxyConfiguration": {"useApifyProxy": false}}
Input parameters
-
urls (array, required)
Description: 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)
Description: 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)
Description: 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: none (prefill: {"useApifyProxy": false})
Example JSON output
{"urn": "urn:li:activity:1234567890","text": "Excited to share our latest research on AI safety and alignment.","url": "https://www.linkedin.com/feed/update/urn:li:activity:1234567890","postedAtTimestamp": 1712323200000,"postedAtISO": "2024-04-05T13:20:15.000000Z","timeSincePosted": "3d","isRepost": false,"authorType": "Person","authorProfileUrl": "https://www.linkedin.com/in/username","authorProfileId": "username","authorHeadline": "CTO at Example Labs","authorFullName": "Ada Lovelace","image": "https://media.licdn.com/dms/image/…/post-image.jpg","type": "image","images": ["https://media.licdn.com/dms/image/…/post-image.jpg"],"author": {"firstName": "Ada","lastName": "Lovelace","occupation": "CTO at Example Labs","id": "username","publicId": "username","trackingId": "ZXhhbXBsZVRyYWNraWQ","profileId": "username","picture": "https://media.licdn.com/dms/image/…/profile.jpg","backgroundImage": ""},"authorName": "Ada Lovelace","authorTitle": "CTO at Example Labs","attributes": [{"start": 0,"length": 9,"type": "PROFILE_MENTION","profile": {"firstName": "OpenAI","lastName": "","occupation": "","id": "user-0","publicId": "openai","trackingId": "ZXhhbXBsZVRyYWNraWQ","profileId": "user-0","picture": "","backgroundImage": ""}}],"comments": [{"time": 1712419600000,"link": "https://www.linkedin.com/feed/update/urn:li:activity:1234567890","text": "Great work!","entities": [],"pinned": false,"originalLanguage": "English","author": {"firstName": "Grace","lastName": "Hopper","occupation": "","id": "commenter-a1b2c3d4e5f6","publicId": "grace-hopper","trackingId": "ZXhhbXBsZVRyYWNraWQ","profileId": "commenter-a1b2c3d4e5f6","picture": "","backgroundImage": "","distance": "OUT_OF_NETWORK"}}],"reactions": [{"type": "LIKE","profile": {"firstName": "Alan","lastName": "Turing","occupation": "","id": "reactor-12ab34cd56ef","publicId": "alan-turing","trackingId": "ZXhhbXBsZVRyYWNraWQ","profileId": "ACoAA12ab34cd","picture": "","backgroundImage": ""}}],"numShares": 0,"numLikes": 142,"numComments": 12,"commentsTruncated": false,"commentsComplete": true,"reactionsTruncated": false,"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 in the public page (e.g., authorHeadline, images).
- comments and reactions are sampled and may be truncated; see flags commentsTruncated and reactionsTruncated.
FAQ
Do I need to log in or provide cookies to use this LinkedIn post scraper?
No. The actor works without login and targets publicly available LinkedIn profile pages. It does not access private or authenticated content.
Can it scrape company pages or group posts?
No. This LinkedIn profile activity scraper only processes LinkedIn profile URLs that contain “/in/”. Non-profile URLs (company, school, groups) are skipped.
How many posts can I extract per profile?
You can set maxPosts between 1 and 500. The default is 10. Keep lower values (e.g., 10–50) for faster, more cost-efficient runs.
What engagement data is captured?
The LinkedIn post data extractor parses numLikes and numComments from the page. It also samples reactions and comments when available, with flags indicating if they’re truncated.
Does it handle LinkedIn’s anti-bot measures?
Yes. It automatically falls back from direct connection to datacenter and then residential proxies when blocked (including 999). Profile pages use residential from the start for improved reliability.
What export formats are supported?
Results are stored in an Apify dataset and can be exported as CSV or JSON. The dataset is also accessible via the Apify API for downstream automation.
Can I integrate this with Python or an API pipeline?
Yes. The actor is API-ready. You can trigger runs and fetch datasets via the Apify API from your Python scripts to extract LinkedIn posts by user at scale.
What types of media does it capture?
This LinkedIn profile posts scraper extracts images where available. The primary image is in image, and up to five images are in images.
Closing CTA / Final thoughts
The Linkedin Profile Post Scraper is built to scrape LinkedIn profile posts reliably at scale. With resilient proxy fallback, live dataset output, and structured fields, it empowers marketers, analysts, and developers to turn public profile activity into actionable insights. Export data to CSV/JSON or consume it via the Apify API to power dashboards and analytics. Start extracting smarter with a production-ready LinkedIn posts crawler tailored for content analysis, social selling, and competitor intelligence.