Linkedin Jobs Scraper avatar

Linkedin Jobs Scraper

Pricing

Pay per usage

Go to Apify Store
Linkedin Jobs Scraper

Linkedin Jobs Scraper

Extract structured job listings from LinkedIn at scale — titles, salaries, tech stacks, seniority levels, company data, and full descriptions. AI-parsed fields, proxy-ready, and built for production pipelines.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Sarfraz Mohammed

Sarfraz Mohammed

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

LinkedIn Jobs Scraper — Apify Actor

Scrapes job listings from LinkedIn's public job board. No login required.

Features

  • 🔍 Search by keywords and location
  • 🗓️ Filter by date posted (24h / week / month)
  • 💼 Filter by job type (full-time, part-time, contract, internship)
  • 📈 Filter by experience level (entry, mid-senior, director, etc.)
  • 🏠 Filter by workplace type (on-site, remote, hybrid)
  • 📄 Optional full job description scraping (visits each job page)
  • 🔄 Pagination — scrapes up to 500 jobs per run
  • 🌐 Proxy support via Apify Proxy

Output Fields

Each job record contains:

FieldDescription
jobIdLinkedIn job ID
jobUrlDirect link to the job posting
titleJob title
companyCompany name
locationJob location
postedAtISO date when posted
postedTextHuman-readable "X days ago"
salarySalary range (if displayed)
isPromotedWhether it's a sponsored listing
descriptionFull job description (if scrapeJobDetails: true)
seniorityLevelSeniority level from job criteria
employmentTypeEmployment type from job criteria
jobFunctionJob function category
industriesIndustry categories
applicantCountNumber of applicants (if shown)
skillsRequired skills listed
scrapedAtISO timestamp of when scraped
searchKeywordsThe keywords used in the search
searchLocationThe location used in the search

Input Example

{
"searchKeywords": "Software Engineer",
"location": "Toronto, ON",
"maxJobs": 100,
"datePosted": "past_week",
"jobType": "full_time",
"experienceLevel": "mid_senior",
"workplaceType": "remote",
"scrapeJobDetails": true,
"proxy": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Usage Notes

  • Proxy: Residential proxies are strongly recommended. LinkedIn aggressively blocks datacenter IPs.
  • Rate limiting: The actor uses randomised delays between requests to mimic human behavior.
  • Login not required: Only public job listings are scraped (no personal data).
  • Concurrency: Set to 1 intentionally — LinkedIn detects parallel requests.

Local Development

# Install dependencies
npm install
# Run locally (uses Apify local storage)
npx apify run
# Or with direct node
APIFY_IS_AT_HOME=0 node src/main.js

Deployment to Apify

# Login to Apify CLI
npx apify login
# Deploy
npx apify push

Extending This Actor

This actor is designed as a starting point. Common extensions:

  • Company details: Cross-reference the company LinkedIn page
  • Deduplication: Use jobId as the key in a named dataset
  • Notifications: Pipe results to Slack/email via Apify integrations
  • Scheduling: Set up a daily schedule in Apify console
  • Storage: Export to Google Sheets or your database via webhooks