LinkedIn Jobs Scraper
Pricing
$0.80 / 1,000 job delivereds
LinkedIn Jobs Scraper
Scrape LinkedIn job postings with the full job description, seniority, employment type, job function, industry and applicant count. Search by keyword, paste a search URL, or pass job links. No login, no proxy needed. Job postings only, no personal data. Charged per job delivered.
Pricing
$0.80 / 1,000 job delivereds
Rating
0.0
(0)
Developer
munin
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Scrape LinkedIn job postings into flat rows — title, company, location, date posted, the full job description, seniority level, employment type, job function, industry and applicant count.
Give it keywords and a location, paste a LinkedIn job-search URL straight from your browser, or hand it individual job links. No login, no cookies, no browser, and it runs without a proxy.
You are charged per job delivered. Failed lookups and duplicates cost nothing.
What you can scrape
| Input field | What you get |
|---|---|
| Search keywords + location | Every posting LinkedIn returns for that search, up to your limit |
| LinkedIn search URLs | Paste the URL from your browser — every filter in it is kept, including ones this actor has no field for |
| Individual job URLs or IDs | Specific postings, without running a search |
All three can be mixed in one run. Job URLs, bare job IDs and urn:li:jobPosting: values are all accepted.
Filters
Date posted (24 hours / week / month), workplace type (on-site, remote, hybrid), job type (full-time, part-time, contract, temporary, internship, volunteer), experience level (internship → executive), sort by relevance or date, and an optional LinkedIn geoId when a place name is ambiguous.
Filters apply to the keyword searches. Pasted search URLs carry their own.
Output
One flat row per posting — ready for CSV, Google Sheets or a database.
{"jobId": "4457722754","title": "Software Engineer (Python Automation)","companyName": "Nexus Corporation","companyUrl": "https://jp.linkedin.com/company/nexusconsulting-global","companyLogo": "https://media.licdn.com/dms/image/…","location": "Minato, Tokyo, Japan","postedAt": "2026-09-20","postedText": "5 hours ago","salary": null,"benefits": "Actively Hiring","applicants": 35,"applicantsText": "35 applicants","seniorityLevel": "Not Applicable","employmentType": "Full-time","jobFunction": "Engineering and Information Technology","industries": "Staffing and Recruiting","description": "Responsibilities:\n- Design, implement, and maintain Python-based systems…","descriptionHtml": "<ul><li>Design, implement…</li></ul>","jobUrl": "https://jp.linkedin.com/jobs/view/software-engineer-python-automation-at-nexus-corporation-4457722754","detailScraped": true,"searchInput": "python developer","scrapedAt": "2026-09-20T07:41:02.118Z"}
Turn Get the full job description off to keep only what the results list shows (title, company, location, date, sometimes salary). That skips one request per job, so the run is several times faster.
What it cannot do
- Job postings only. No candidate profiles, no applicant lists, no names or contact details of people. That data is not collected at any setting.
- No salary on most postings. LinkedIn shows a salary range only where the poster provided one, and it appears in the results list rather than on the posting page. Most rows will have
salary: null. It is not inferred or estimated. - Roughly 1,000 postings per search. That is LinkedIn's own ceiling for a single logged-out search, not a limit of this actor. Split a wide search by location, by date posted, or by narrower keywords to go past it.
- No Easy Apply detail, no company-size or employee-count fields, no recruiter contact. Those need a logged-in session.
- Job descriptions are as the employer wrote them. They are not translated, summarised or cleaned beyond stripping HTML into
description(descriptionHtmlkeeps the original markup). - Postings that were removed between the search and the lookup are delivered with whatever the results list showed and a
detailErrorfield. They are not charged for the missing description. - Results reflect what LinkedIn serves to a logged-out visitor. A logged-in member sees a slightly different, personalised ranking.
Tips
maxItemscaps the whole run — the safest way to cap what you spend.- Parallel requests above 8 is not faster. LinkedIn starts returning 429 and the actor pauses every worker until it clears. 4 is the sweet spot; 8 works and is about 30% faster in wall-clock time.
- Use Most recent sorting plus Past 24 hours for a daily job feed, and run it on a schedule.
- No proxy is needed. Turn one on only for very large repeated runs, or when you need results as a specific country sees them.
Legal
This actor reads job postings that LinkedIn publishes to logged-out visitors. It does not log in, does not use cookies, and does not collect personal data about individuals. You are responsible for how you use the output, including GDPR/CCPA obligations where they apply.