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.
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.
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.
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.
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.