# ⚡️ Linkedin Jobs Scraper (`future_creator/linkedin-jobs-scraper`) Actor

This LinkedIn Jobs scraper efficiently gathers detailed information about job vacancies on LinkedIn based on your specified criteria. Easily configure filters to match LinkedIn's search capabilities, ensuring precise and comprehensive selection of relevant job listings.

- **URL**: https://apify.com/future_creator/linkedin-jobs-scraper.md
- **Developed by:** [Future Creator](https://apify.com/future_creator) (community)
- **Categories:** Jobs, Automation
- **Stats:** 460 total users, 1 monthly users, 100.0% runs succeeded, 9 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-usage

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### What does Linkedin Jobs Scraper do?

Linkedin Jobs Scraper allows you to **extract job data from Linkedin's job listings**: job title, job link, description, company name, employment type, apply link, salary, and more. This tool is essential for automated job search, saving you time and effort.

![Instructions](https://github.com/Edgar-84/online_jobs_scraper/blob/main/static/apify/linkedin_jobs/Linkedin%20Jobs%20Scraper%20Instructions.gif?raw=True)

### What job vacancies data can I extract?

Using Linkedin Jobs Scraper, you can extract comprehensive job data:

| 🔎 **Job title**               | 📌 **Job link**              | 🚀 **Seniority level** |
|--------------------------------|------------------------------|------------------------|
| 📃 **Description**             | 💼 **Company name**          | ⏳ **Employment type**  |
| ⏰ **Posted time/Published at** | 📌 **Company LinkedIn link** | 🎯 **Job function**    |
| 🌟 **Benefits**                | 📬 **Applicants count**      | 🧑‍💻 **Industries**   |
| 📌 **Apply link**              | 💰 **Salary**                | 📍 **Job location**    |

### Why You Should Use Our Linkedin Jobs Scraper?

#### Automation and Time-Saving

- **No more manual searching:** Forget hours spent searching for job listings. Our parser automatically gathers all the necessary information for you.

* **Speed:** Receive data instantly without manually sifting through hundreds of pages.

#### Accuracy and Flexible Settings

- **Custom filters:** Set up the parser as flexibly and easily as you would on LinkedIn. Get only relevant job listings.

* **Minimize errors:** Eliminate human errors and reduce the likelihood of missing suitable job postings.

#### Comprehensive and Detailed Information

- **Complete data:** Our parser collects not only basic job information but also details such as posting time, description, links, and much more.

* **Analytics and reports:** Easily analyze data and obtain reports to help you make informed decisions.

#### Additional Benefits

- **Job comparison:** Easily compare job postings from different companies and industries in one place.

* **Efficiency:** Focus on applying and interviewing rather than searching.

Our LinkedIn job posting parser will save you time and help you find the perfect job faster. Try it today and experience all the benefits yourself!

### How do I use Linkedin Jobs Scraper?

Using our Linkedin Jobs Scraper is very similar to using filter settings to search for jobs on Linkedin. You can select the following parameters for job searches:

- Job Title
- Job Location
- Company Name
- Total number of records
- Sort by: `[Most recent, Most relevant]`
- Date posted: `[Any time, Past month, Past week, Past 24 hours]`
- Experience level: `[Internship, Entry level, Associate, Mid-Senior level, Director, Executive]`
- Job type: `[Full-time, Part-time, Contract, Temporary, Internship]`
- Remote/On-site: `[On-Site, Remote, Hybrid]`
- Industry

![Input settings](https://raw.githubusercontent.com/Edgar-84/online_jobs_scraper/main/static/apify/linkedin_jobs/input_settings.png)

### Sample output data

After running the scraper, you can get the following dataset:

![Output data](https://raw.githubusercontent.com/Edgar-84/online_jobs_scraper/main/static/apify/linkedin_jobs/output_data.png)

You can get the output data in the following formats: `JSON, CSV, EXCEL, XML, HTML Table, RSS, JSONL`.

Here is the sample output in JSON format:

```json
{
  "job_id": "3970971800",
  "job_link": "https://pl.linkedin.com/jobs/view/full-stack-developer-react-python-at-algoteque-innovation-hub-3970971800?trk=public_jobs_topcard-title",
  "job_title": "Full-stack Developer (React/Python)",
  "company_name": "ALGOTEQUE Innovation Hub",
  "company_linkedin_url": "https://pl.linkedin.com/company/algoteque",
  "job_location": "Warsaw, Mazowieckie, Poland",
  "job_published_at": "2024-07-09",
  "job_posted_time": "6 days ago",
  "job_salary_info": "",
  "applicants_count": "Be among the first 25 applicants",
  "benefits": "Actively Hiring",
  "description_text": "\n          ALGOTEQUE is an IT consultancy firm that helps startups, mid-sized and large corporations to create and deliver innovative technologies. Our team has a successful track record in designing, developing, implementing, and integrating software solutions (AI, ML, BI, Web, Automation) for Telecom, Energy, Bank, Insurance, Pharma, Automotive, Industry, e-commerce. We deliver our services both in fixed-price and time-and-materials models, helping our customers achieve their business and IT strategies.\n\nJob Description\n\nWe are seeking a skilled and enthusiastic Full-stack Developer with expertise in React and Python to join our dynamic international team. If you thrive in a collaborative environment and are excited about tackling challenging problems, we want to hear from you!\n\nResponsibilities\n\n\n Develop and maintain web applications using React for front-end and Python for back-end\n Implement responsive and user-friendly interfaces\n Ensure the performance, quality, and responsiveness of applications\n Write clean, maintainable, and well-documented code\n Participate in code reviews and provide constructive feedback to peers\n Troubleshoot and debug issues across the stack\n Stay up-to-date with emerging technologies and industry trends\n\nProfile / Requirements\n\n\n Bachelor's degree in Computer Science, Engineering, or related field\n Proficiency in front-end technologies: React, JavaScript, HTML, CSS\n Strong experience with Python and related frameworks (e.g., Django, Flask)\n Familiarity with databases and version control systems\n Strong problem-solving skills and attention to detail\n Excellent communication and teamwork abilities\n Good English skills suited for an international working environment\n Valid PL/EU work permit\n\nNice To Have\n\n\n Experience with Node.js\n\nBenefits\n\n\n Long-term project and cooperation\n International work environment\n Great company atmosphere and culture\n Growth & work life balance oriented processes\n Medical card, prepaid bonus card\n Flexible working hours\n Remote work\n\nAO2932\n        ",
  "apply_link": "https://www.linkedin.com/jobs/view/externalApply/3970971800?url=https%3A%2F%2Fwww%2Ejobposting%2Epro%2Femploi-1833452-123%23postuler&urlHash=BcMg",
  "job_seniority_level": "Mid-Senior level",
  "job_employment_type": "Other",
  "job_function": "Information Technology",
  "job_industries": "Information Technology & Services"
}
```

### Which Other Actors Can I Use:

I have implemented Actors for various use cases, and you can use the following:

**[⚡️ LinkedIn Company URL Bulk Profile Finder](https://apify.com/future_creator/LinkedIn-Company-URL-Bulk-Profile-Finder)** - This LinkedIn Company URL scraper efficiently gathers information about profile companies on LinkedIn.
I can promptly verify if a company (or a list of companies) has a profile on LinkedIn.
See for yourself!

🚀 I am constantly improving existing Actors and creating new ones. You can see all the Actors I have made [here](https://apify.com/future_creator)

#### **I am always happy to receive your feedback and discuss any questions, such as:**

- ✅ Suggestions for Actor improvement
- ✅ Issues with the Actor
- ✅ Ideas for implementing new Actors
- ✅ Any other concerns you might have

Feel free to reach out to me!

I will be glad to feedback on any of these questions, you can create **Issue**, or contact me in [**my profile.**](https://apify.com/future_creator)

**Enjoy using it!**

# Actor input Schema

## `job_title` (type: `string`):

Job title for the search (for example: 'Backend Developer', 'Sales Manager')

## `job_location` (type: `string`):

Job location for the search (for example: 'Europe', 'United States')

## `company_name` (type: `array`):

Company(s) where we will search for Job Title (for example: 'Apple', 'Amazon', 'Tesla')

## `number_records` (type: `integer`):

How many rows do you want to display (e.g., 50, 100, 200). Set 0 if you want to scrape all records

## `sort_by` (type: `string`):

Select the required sorting settings for you, 'Most recent' or 'Most relevant'

## `date_posted` (type: `string`):

Select date posted (for example: 'Past week')

## `experience_level` (type: `array`):

Set the Experience level settings, you can select several values (for example: \[Internship, Associate])

## `job_type` (type: `array`):

Set the Job Type settings, you can select several values (for example: \[Full-time, Temporary])

## `remote_type` (type: `array`):

Remote work settings (for example: \[Remote, Hybrid])

## `industry` (type: `array`):

Set the Industry settings, you can select several values (for example: \[Software Development, Financial Services])

## `proxyConfiguration` (type: `object`):

Select proxies to be used by your crawler.

## Actor input object example

```json
{
  "job_title": "Software Engineer",
  "job_location": "New York",
  "company_name": [
    "Apple",
    "Amazon"
  ],
  "number_records": 5,
  "sort_by": "R",
  "date_posted": "",
  "experience_level": [],
  "job_type": [],
  "remote_type": [],
  "industry": [],
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "job_title": "Software Engineer",
    "job_location": "New York",
    "company_name": [
        "Apple",
        "Amazon"
    ],
    "number_records": 5,
    "proxyConfiguration": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("future_creator/linkedin-jobs-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "job_title": "Software Engineer",
    "job_location": "New York",
    "company_name": [
        "Apple",
        "Amazon",
    ],
    "number_records": 5,
    "proxyConfiguration": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("future_creator/linkedin-jobs-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "job_title": "Software Engineer",
  "job_location": "New York",
  "company_name": [
    "Apple",
    "Amazon"
  ],
  "number_records": 5,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}' |
apify call future_creator/linkedin-jobs-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,future_creator/linkedin-jobs-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/alh01pSfw4TwsZUGe/builds/nRwDmogT5QMKgPycK/openapi.json
