Skip to content

HimeshDua/Linkedin-Job-Scraper

Repository files navigation

🚀 LinkedIn Job Scraper (No BS Lead Finder)

Stop manually scrolling LinkedIn like everyone else. This tool pulls real job leads automatically using Playwright + TypeScript.

Built by Himesh Dua Powered by vibe coding ⚡


💥 What This Actually Does

  • Scrapes real LinkedIn job listings

  • Applies advanced filters (not basic search)

  • Extracts:

    • 🧠 Job Title
    • 🏢 Company
    • 🌍 Location
    • 🔗 Apply Link
  • Saves everything into data.json (ready to use)

👉 This is not a toy. It’s your client acquisition starting point.


⚡ Features That Matter

  • 🔐 Session Persistence → Login once, reuse forever

  • 🧩 Smart Selectors → Survives LinkedIn DOM changes

  • 🎯 Advanced Filters

    • ⏰ Last 24h / week / month
    • 🎓 Experience level targeting
    • 💼 Job type filtering
    • 🏠 Remote / Hybrid / Onsite
    • 📊 Sort by latest jobs
  • 🧪 Debug Mode → Auto screenshot when things break

  • 📦 Clean JSON Output → Plug into your next system


🛠️ Setup (2 minutes max)

git clone https://github.com/himeshdua/linkedin-job-scraper.git
cd linkedin-job-scraper

bun install
bunx playwright install

🔐 Login (Do this ONCE)

bun run login

What happens:

  • Browser opens
  • You log into LinkedIn
  • Press ENTER
  • Session saved → linkedin-session.json

👉 No repeated logins. No friction.


🚀 Run Scraper

bun run scrape

Boom. You get:

data.json

🎯 Customize Your Hunt

Edit this:

const searchParams = {
  keywords: 'Next.js Developer',
  location: 'United States',
  timeFilter: 'r86400',
  experienceLevel: '2,3',
  jobType: 'F',
  remoteFilter: '2',
  sortBy: 'DD',
  salaryInsight: true,
};

👉 Target:

  • Specific tech stacks
  • Remote-only jobs
  • Fresh listings (high intent)

📊 Output Example

[
  {
    "title": "Frontend Developer",
    "company": "Startup Inc",
    "location": "Remote",
    "link": "https://linkedin.com/jobs/view/..."
  }
]

⚠️ Read This Before You Cry “It’s Broken”

LinkedIn is hostile to bots.

If it fails:

  • 🔁 Re-run bun run login
  • 📸 Check debug-screenshot.png
  • 🧠 Update selectors (DOM changes often)

🧠 Reality Check

This is NOT:

  • ❌ A mass spam bot
  • ❌ A “get rich quick” tool

This IS:

  • ✅ A lead source
  • ✅ A data pipeline
  • ✅ Step 1 of a real client system

📜 Scripts

"login": "bun run ./save-session.ts",
"scrape": "bun run ./scrape-linkedin.ts"

🔥 What You Should Build Next

If you’re serious:

  • AI lead scoring
  • Personalized outreach generator
  • Auto DM system (carefully)

👉 That’s where money is. Not scraping.


⚡ Limitations (No Sugarcoating)

  • LinkedIn DOM changes = things break
  • No pagination (yet)
  • No emails/contact extraction
  • Can get blocked if abused

👑 Creator

Built by Himesh Dua Vibe coded, battle tested, and meant to be extended.

About

LinkedIn Job Scraper (No BS Lead Finder)

Topics

Resources

Stars

Watchers

Forks

Contributors