Skip to content
/ jsas Public

A program to automate job searches

License

Notifications You must be signed in to change notification settings

sn0rp/jsas

Repository files navigation

Logo goes here

Job Search Automation Software

License badge GitHub issues GitHub repo size

Table of Contents

Summary

Job Search Automation Software reads job search criteria from a JSON config file and performs searches across various job posting websites. Resultant jobs are added to a list which is sorted and filtered before finally being recorded to a CSV file. A PowerShell script is provided to open all job links within the CSV file.

NOTE: This repository (README included) was created years ago when I was inexperienced and should really be refactored, although this is not a priority.

Installation

Run pip install -r requirements.txt or individually install the necessary modules:

pip install beautifulsoup4
pip install lxml
pip install pandas
pip install selenium

Selenium requires a driver to interface with web browsers. For Chrome, this is ChromeDriver. If you run into issues with Glassdoor and Selenium, try using ChromeDriver and following the first answer from this Stack Overflow post.

Usage

Credentials and search criteria are taken from config.json. An example has been provided:

{
    "gdUser": "GLASSDOOR USERNAME",
    "gdPass": "GLASSDOOR PASSWORD",
    "queries": [
        {
            "city": "New York",
            "radius": "25",
            "state": "NY",
            "term": "Software Engineer"
        },
        {
            "city": "New York",
            "radius": "25",
            "state": "NY",
            "term": "Systems Engineer"
        }
    ],
    "blacklist": [
        "Cashier",
        "Advisor"
    ]
}

Note that this is an example config. Please modify and rename to myConfig.json in order for the software to function properly.

Glassdoor login credentials are required. This program does not log into Indeed, so no other credentials are necessary. Search criteria is added to the queries list in the format shown. Any jobs whose titles contain items in the blacklist list will be removed before the program terminates.

Note that there are restrictions on acceptable radius values:

# Parameters allowed by radius filter on Indeed, Glassdoor
radius_options = ['0', '5', '10', '15', '25', '50', '100']

Run the program and results.csv will be created with your jobs. You can then run jsasOpen.ps1 with PowerShell to open every link at once. It is recommended that you check how many results there are before running this.

Should the program exit with an error, a second attempt may resolve the issue. Otherwise, see jsas.log for debugging information.

Contributing

Webscraping applications are fequently broken by website updates. If you are the first to notice such an event here, please feel free to open an issue or to address it and submit a pull request.

License

All original software is distributed under the MIT License. User is bound to the Terms of Service of any other websites with which the user interacts with this software. Developer does not support Terms of Service violations.

About

A program to automate job searches

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published