Skip to content

iliadzen/linkedin_job_scraper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

A Python package with a web scraper of jobs from LinkedIn.

Can be used for:

  • automated jobs search 🔍
  • creating custom alerts 🚨
  • collecting data for analytical reports 📈

Possible extention: extract keywords from job descriptions with LLMs.

Classes

JobSearch - to get a list of jobs from LinkedIn job search page by defined parameters.

Parameters:

  • keywords: keywords to search for.
  • location: location to search in.
  • distance (optional): distance in miles to search for.
  • work_modes (optional): work modes codes to filter by: 1 - On-site, 2 - Remote, 3 - Hybrid, None - all.
  • company_codes (optional): companies codes to filter by.
  • industries (optional): industries codes to filter by.
  • experience_levels (optional): experience levels to filter by: 1 - Internship, 2 - Entry level, 3 - Associate, 4 - Mid-Senior level, 5 - Director, 6 - Executive.
  • easy_apply (optional): filter only Easy Apply jobs (requires yo login into an account).
  • posted_ago_max (optional): max number of second a job was posted ago, default 1 day.

Job - to parse the job page by a given url.

How to use

from selenium import webdriver

driver = webdriver.Chrome()

params = {
    'keywords': 'Data Engineer',
    'location': 'Germany'
}
search = JobSearch(driver, **params)

jobs = search.get_jobs() # returns the list of dicts with parsed info (position, company name, job page link, posted ago and etc.)
job = Job(driver, jobs[0]['job_link'])
description = job.get_job_description()

An extended example can be found in example.ipynb notebook.

About

A Python package with a scraper of jobs from LinkedIn

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published