LinkedIn Job Scraper avatar
LinkedIn Job Scraper

Pricing

$19.00/month + usage

Go to Apify Store
LinkedIn Job Scraper

LinkedIn Job Scraper

Scrape job listings from LinkedIn.com including title, company, location, and posting details. Fast, reliable LinkedIn jobs data scraper for hiring, research, and analytics.

Pricing

$19.00/month + usage

Rating

5.0

(2)

Developer

Crawlworks

Crawlworks

Maintained by Community

Actor stats

7

Bookmarked

145

Total users

4

Monthly active users

14 hours ago

Last modified

Share

💼 What is LinkedIn Job Scraper?

LinkedIn Job Scraper lets you extract job listings from linkedIn jobs, helping you find opportunities, analyze market trends, and streamline recruitment with just a few clicks.

  • Generate qualified leads: extract job titles, company names, locations, and descriptions to build targeted job lists for your job search or recruitment efforts
  • Track competitors across regions: monitor where companies are hiring, what positions they're posting, and how frequently they recruit in different markets
  • Perform market analysis: analyze job market saturation, identify skill gaps, or benchmark salary trends by location, industry, and seniority level
  • Support recruitment workflows: discover high-volume hiring companies or trending job categories for strategic outreach and talent acquisition
  • Automate research workflows: replace manual job search tasks with repeatable workflows that keep job datasets fresh and consistent

The scraper automates LinkedIn job data extraction, enabling you to efficiently scrape up to 1,000 jobs per search with lightning-fast results, intelligent proxy rotation, and zero-configuration simplicity.

What data does LinkedIn Job Scraper extract?

💼 Job title🏢 Company name, logo, and LinkedIn profile URL
📍 Location🌐 Company website URL
📝 Full job description🏷️ Industry classification
🎯 Required skills and qualifications💰 Salary range (if available)
📅 Posted date and time⏰ Application deadline (valid through date)
🔗 Direct job posting URL📋 Application URL and type (Easy Apply or External)
👔 Employment type (Full-time, Part-time, Contract, etc.)📊 Seniority level (Entry, Mid, Senior, Executive, etc.)
🔍 Source search URL📌 Posted time ago (e.g., "2 weeks ago")

For maximum usefulness, LinkedIn Job Scraper has the following abilities:

  • Extract comprehensive job data: job titles, company information, locations, descriptions, skills, salary ranges, and application details
  • Flexible search: scrape using job titles, keywords, locations, or direct LinkedIn search result URLs
  • Advanced filtering: filter by employment type, seniority level, industry, and more
  • Flexible output format: export data into almost any format, with multiple views available
  • Integrate with other tools: use webhooks or Apify's MCP server to set up workflows with other Actors or third-party tools like n8n, make or zapier
  • Real-time results: get up-to-date job postings with posting dates and application deadlines

⬇️ Input

The input for LinkedIn Job Scraper should be either a LinkedIn search results URL or a job title in combination with a location. You can also apply various filters such as employment type, experience level, work type, and time posted range. You can set up the input programmatically or use the fields in the scraper's interface.

🔍 Search queries and locations

You can search for jobs using a combination of job title (query) and location. The scraper will fetch jobs matching your criteria from LinkedIn's job search results.

Query examples:

  • Python Developer
  • Software Engineer
  • Data Scientist
  • Marketing Manager
  • Product Designer

Location examples:

  • Berlin, Germany
  • New York, NY
  • London, United Kingdom
  • San Francisco Bay Area
  • Remote

Using specific job titles and locations will help you get more targeted results. You can combine multiple search terms in your query, but LinkedIn's search algorithm will handle the matching automatically.

🔗 Direct LinkedIn Search URLs

The easiest way to scrape jobs is by using direct LinkedIn search result URLs.

If you provide LinkedIn search URLs, the scraper will fetch jobs directly from those URLs, bypassing the need to configure filters manually. This is particularly useful when you've already filtered jobs on LinkedIn's website and want to scrape those exact results.

You can provide up to 3 search URLs per run. Each URL will fetch the number of jobs specified in the "Total Jobs to Fetch" parameter.

Example LinkedIn search URLs:

https://www.linkedin.com/jobs/search/?keywords=python%20developer&location=Berlin%2C%20Germany&f_E=2&f_TPR=r2592000&position=1&pageNum=0

How to get a LinkedIn search URL:

  1. Go to LinkedIn Jobs Search
  2. Enter your search criteria (job title, location, filters)
  3. Apply any filters you want (employment type, experience level, date posted, etc.)
  4. Copy the URL from your browser's address bar
  5. Paste it into the "LinkedIn Search URLs" field

When using search URLs, the scraper will ignore the query and location fields and use the filters already applied in the URL.

Job filters

You can filter jobs using three main categories:

Job Types: Full-time, Part-time, Contract, Temporary, Volunteer, Internship

Experience Level: Internship, Entry Level, Associate, Mid-Senior Level, Director, Executive

Work Type: On-Site, Remote, Hybrid

You can select multiple filters within each category to broaden or narrow your search results.

Time posted range

Filter jobs by when they were posted: Any time (default), Past 24 hours, Past 3 days, Past 7 days, Past 30 days. You can also set custom time ranges programmatically using the LinkedIn Job Scraper API.

Number of jobs to fetch

Specify how many jobs you want to scrape per search. Maximum is 1,000 jobs per search URL. If you provide multiple search URLs, each URL will fetch the number of jobs you specify.

Note: LinkedIn currently supports scraping up to 1,000 jobs per search. If you request more than 1,000 jobs, the scraper will fetch the maximum available (up to 1,000).


⬆️ Output

Your results appear in an Apify dataset which you can find in the Output or Storage tab.

Download as JSON, CSV, Excel, HTML or view as a table. Choose which fields to include before export.

Table view

The default table view displays all scraped jobs in a spreadsheet-like format, with each job as a row and data fields as columns. This view is perfect for quick analysis and filtering directly in the Apify Console.

LinkedIn job scraper output example showing structured job data

JSON

Here's the data you would get for a single linkedin job search listing (this one 💼 so you can compare):

{
"companyLogo": "https://media.licdn.com/dms/image/v2/D4D0BAQGJDSke7YHF-g/company-logo_200_200/company-logo_200_200/0/1705567450327/ellamind_logo?e=2147483647&v=beta&t=WU5ubFCNi9vkWhVsvrCXkw2QzmzFcjQbpLfxdX10zng",
"companyName": "ellamind",
"companyUrl": "https://de.linkedin.com/company/ellamind",
"industry": "IT-Dienstleistungen und IT-Beratung",
"location": "Berlin, DE",
"jobTitle": "Senior Fullstack Engineer",
"employmentType": "Full-time",
"seniorityLevel": "Management",
"jobUrl": "https://de.linkedin.com/jobs/view/senior-fullstack-engineer-at-ellamind-4334055810?position=6",
"salary": "50.000,00 €–70.000,00 €",
"postedDate": "2025-11-04",
"postedTime": "Vor 2 Tagen",
"validThrough": "2026-05-03",
"jobDescription": "Your tasks\nAt ellamind, we are developing a groundbreaking platform that enables companies to improve AI applications faster and use them more efficiently to automate their processes. As a Senior Fullstack Engineer you will play a key role in...",
"skills": [
"Full-Stack-Entwicklung",
"Stack",
"Serverseite",
"Cascading Style Sheets (CSS)",
"Webanwendungen",
"Back-End-Webentwicklung",
"Problemlösung",
"HTML",
"XML",
"Informatik"
],
"applyUrl": "https://ellamind.jobs.personio.de/job/2373767?language=de&display=en",
"applicationType": "External Apply",
"sourceSearchUrl": "https://www.linkedin.com/jobs/search?keywords=Python Developer&location=Berlin, Germany&f_TPR=r&position=1&pageNum=0&f_JT=F,&f_E=&f_WT=1,"
}

❓ FAQ

How does LinkedIn Job Scraper work?

LinkedIn Job Scraper uses direct HTTP calls to extract job listings from LinkedIn's job search pages, making it significantly faster than traditional browser-based scraping methods. By leveraging optimized API-like requests, the scraper can process up to 1,000 jobs in under 1 minute. It extracts structured data from each job posting and stores it in a clean, organized format. The scraper includes inbuilt proxy rotation that automatically handles IP management, ensuring reliable and uninterrupted data extraction at scale.

Can I scrape jobs from multiple locations?

Yes. You can scrape LinkedIn job listings from multiple locations by providing multiple search URLs (up to 3 per run) or by running separate searches with different location parameters. Each search URL will fetch the number of jobs you specify, allowing you to collect job data from various geographic regions in a single run.

How can I increase the speed of the scraper?

The scraper is already optimized for speed, but you can further improve performance by:

  • Using direct LinkedIn search URLs instead of building searches with filters—this bypasses manual filter configuration and speeds up processing
  • Limiting the number of jobs to fetch if you don't need the full 1,000 jobs per search
  • Leveraging the built-in proxy pool for optimal performance and reliability
  • Running multiple searches in parallel using the Apify API to process multiple locations or queries simultaneously

Can I use LinkedIn Job Scraper to extract specific job details?

Yes. LinkedIn Job Scraper extracts comprehensive job details including job titles, company information, locations, full job descriptions, required skills, salary ranges (when available), employment types, seniority levels, posting dates, and application URLs. All this data is available in structured formats like JSON, CSV, or Excel.

Can I integrate LinkedIn Job Scraper with other apps?

Yes. LinkedIn Job Scraper can be connected with almost any cloud service or web app thanks to integrations on the Apify platform. You can integrate your LinkedIn job data with Zapier, Slack, Make, Airbyte, GitHub, Google Sheets, Asana, LangChain and more.

You can also use webhooks to carry out an action whenever an event occurs, for example, get a notification whenever LinkedIn Job Scraper successfully finishes a run.

Can I use LinkedIn Job Scraper as its own API?

Yes, you can use this LinkedIn Job Scraper tool to extract structured job data programmatically via Apify API. You can manage, schedule, and run Apify actors, access datasets, monitor performance, get results, create and update actor versions, and more.

To access the API using Node.js, you can use the apify-client NPM package. To access the API using Python, you can use the apify-client PyPI package.

For detailed information and code examples, see the API tab or refer to the Apify API documentation.

Can I use this LinkedIn Job Scraper API in Python?

Yes, you can use the Apify API with Python. To access the LinkedIn Job Scraper API with Python, use the apify-client PyPI package. You can find more details about the client in our Python Client documentation.

Web scraping is legal if you are extracting publicly available data, which includes most LinkedIn job listings. However, you should respect boundaries such as personal data and intellectual property regulations. You should only scrape personal data if you have a legitimate reason to do so, and you should also factor in LinkedIn's Terms of Use.


💬 Your feedback

We're always working on improving our Actors' performance. If you have any technical feedback for Linkedin Jobs Scraper or simply found a bug, please create an issue on the Actor's Issues tab in Apify Console.