LinkedIn Jobs Scraper
Pricing
$9.90/month + usage
LinkedIn Jobs Scraper
Extract comprehensive LinkedIn job data with company insights – job details, applicant counts, salary ranges, and when available, company ratings with pros and cons from employee reviews.
Pricing
$9.90/month + usage
Rating
0.0
(0)
Developer

Scrape Pilot
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
# LinkedIn Jobs Scraper — Ratings, Pros & Cons[](https://apify.com/your-username/linkedin-jobs-scraper) [](https://opensource.org/licenses/MIT)A powerful LinkedIn job scraper that extracts comprehensive job listings including titles, companies, locations, descriptions, salaries, and when available, **company ratings** and **pros/cons** from employee reviews. Perfect for job market analysis, competitive intelligence, and recruitment research.---## 🚀 Features- **Job Details** – Title, company, location, description, seniority level, employment type, job function, industries.- **Applicant & Salary Info** – Number of applicants, salary range (when provided).- **Company Information** – Company LinkedIn URL, name.- **Ratings & Reviews** – Extracts company ratings and pros/cons from the job posting or linked company profile (if `fetch_details` is enabled and data exists).- **Flexible Search** – Filter by keywords, location, remote-only, sort order, job type, and experience level.- **Pagination Control** – Set `max_results` to limit the number of jobs returned.- **Proxy Support** – Built‑in Apify proxy with residential groups to avoid IP blocking (configurable via input or environment).---## 📥 Input SchemaThe actor accepts the following JSON input:| Field | Type | Required | Default | Description ||-------------------|---------|----------|-----------|-------------|| `fetch_details` | boolean | No | `true` | Whether to fetch additional details (company ratings, pros/cons, full description) by visiting each job page. || `keywords` | string | Yes | – | Job title, keywords, or company name to search for. || `location` | string | Yes | – | City, state, country, or "Remote" to filter jobs by location. || `max_results` | integer | No | `10` | Maximum number of job listings to return. || `remote_only` | boolean | No | `false` | If `true`, returns only remote jobs. || `sort` | string | No | `relevant`| Sorting criteria: `"relevant"` (most relevant) or `"date"` (most recent). || `job_type` | string | No | `""` | Filter by employment type: `"F"` = Full‑time, `"P"` = Part‑time, `"C"` = Contract, `"T"` = Temporary, `"I"` = Internship, `"V"` = Volunteer. Leave empty for no filter. || `experience_level`| string | No | `""` | Filter by seniority: `"1"` = Internship, `"2"` = Entry level, `"3"` = Associate, `"4"` = Mid‑Senior, `"5"` = Director, `"6"` = Executive. Leave empty for no filter. |### Example Input```json{"fetch_details": true,"keywords": "software engineer","location": "United States","max_results": 10,"remote_only": false,"sort": "relevant","job_type": "","experience_level": ""}
📤 Output Format
The output is an array of job objects. Each object contains the fields described below. If fetch_details is enabled and the job page includes ratings or pros/cons, they will appear in the ratings and pros_cons fields.
| Field | Type | Description |
|---|---|---|
job_id | string | Unique LinkedIn job identifier. |
title | string | Job title. |
company | string | Company name. |
company_url | string | LinkedIn company profile URL. |
location | string | Job location (city, state, country). |
date_posted | string | Date the job was posted (ISO format). |
remote | boolean | true if the job is remote, otherwise false. |
description | string | Full job description (HTML or plain text). |
seniority_level | string | e.g., "Not Applicable", "Entry level", "Associate", etc. |
employment_type | string | e.g., "Full-time", "Part-time", "Contract". |
job_function | string | e.g., "Engineering and Information Technology". |
industries | string | Industry sector(s) of the company. |
applicants | integer | Approximate number of applicants (if available). |
salary | string | Salary range as displayed (if provided). |
job_url | string | Direct link to the job posting. |
ratings | object | Optional. Company rating information (if available). Contains fields like overall_rating, review_count, etc. |
pros_cons | object | Optional. Pros and cons from employee reviews (if available). May include pros and cons arrays. |
Note: The presence of
ratingsandpros_consdepends on whether the job posting or the associated company profile exposes this data. Enablefetch_detailsto maximise the chance of retrieving them.
Example Output (Truncated)
[{"job_id": "4370317193","title": "Software Engineer (New Grads) - San Francisco","company": "Giga","company_url": "https://www.linkedin.com/company/gigaml","location": "San Francisco, CA","date_posted": "2026-03-02","remote": false,"description": "About Giga Giga has recently raised a $61M Series A and has several paying customers...","seniority_level": "Not Applicable","employment_type": "Full-time","job_function": "Engineering and Information Technology","industries": "Software Development","applicants": 200,"salary": "Base pay range $160,000.00/yr - $250,000.00/yr","job_url": "https://www.linkedin.com/jobs/view/4370317193"},{"job_id": "4334367155","title": "Software Engineer, Fullstack, Early Career","company": "Notion","company_url": "https://www.linkedin.com/company/notionhq","location": "New York, NY","date_posted": "2026-03-01","remote": false,"description": "About Us Notion helps you build beautiful tools for your life’s work...","seniority_level": "Not Applicable","employment_type": "Full-time","job_function": "Engineering and Information Technology","industries": "Software Development","applicants": 200,"salary": "Base pay range $126,000.00/yr - $180,000.00/yr","job_url": "https://www.linkedin.com/jobs/view/4334367155"}// ... additional jobs up to max_results]
🛠 Usage on Apify
- Create a new task with this actor.
- Provide input as a JSON object (see example above).
- Run the actor – it will automatically use Apify proxy if configured (you can also add proxy settings in the input if needed).
- Download results as JSON, CSV, or XML from the Apify storage.
Running via API
Trigger runs programmatically using the Apify API. Example with cURL:
curl -X POST "https://api.apify.com/v2/acts/your-username~linkedin-jobs-scraper/runs" \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_API_TOKEN" \-d '{"fetch_details": true,"keywords": "software engineer","location": "United States","max_results": 10,"remote_only": false,"sort": "relevant","job_type": "","experience_level": ""}'
⚠️ Important Notes
- Rate Limiting & Proxies: LinkedIn employs anti‑scraping measures. We strongly recommend using Apify proxy with residential groups. You can add a
proxyConfigurationfield to the input (similar to other Apify actors) if not already included. - Legal Compliance: Ensure your use of scraped data complies with LinkedIn's Terms of Service and all applicable laws. This actor is intended for legitimate research and analysis purposes only.
- Data Availability: Some fields (e.g.,
salary,applicants,ratings) may not be present for every job. The actor returns only what LinkedIn displays. fetch_details: Enabling this option will cause the actor to visit individual job pages, increasing runtime and proxy usage, but it may retrieve richer data (full description, ratings, pros/cons).
📦 Changelog
v1.0.0 (2025-03-14)
- Initial release
- Job listing extraction with key fields
- Optional detailed scraping with
fetch_details - Support for filtering by remote, job type, experience level
📄 License
This actor is licensed under the MIT License. See the LICENSE file for details.
Maintained by [Your Name/Organization]
For issues or feature requests, please open an issue on GitHub or contact your-email@example.com.