Application Data | |
---|---|
Package | jobfinder |
Version | 0.1.4 |
Topic | Information Technology, Utilities |
Development Status | 2 - Pre-Alpha |
Compatibility | Windows, Linux, MacOS |
Arch | Any |
Python | Version >= 3.5 |
Dependencies | See requirements.txt |
- Principal Author : William Lake
- PyPi Packaging : Greg Beam
A set of python scripts built to gather State of Montana IT jobs in Helena, MT on behalf of students in the UM Helena IT department, notifying them of a new job if one appears. Job data gathered from the State of Montana's [central job site][https://mtstatejobs.taleo.net/careersection/200/jobsearch.ftl?lang=en].
Job Finder was built using Python >= 3.5, 3.6, 3.7; tested on Ubuntu 18.04 and Windows 10 using Anaconda Python virtual environments. For a full list of modules used, see requirements.txt
NOTE: This process is to be used during development. When the package is ready for General Availability to the public, a standard
pip install <package-name>
will be used rather than the-e .
convention. Likewise, there will be no need to clone the repository beforehand.
A Makefile
exists for both Windows and Linux | Posix systems. The help message
may look slightly different on each system, however, the commands are identical
for both.
----------------------------------------
Job Finder Make Help
----------------------------------------
The build script takes one option:
make <option>
clean : clean the build tree
distclean : clean distribution files and folders
dist : generate distribution wheel
install : install the application locally
uninstall : uninstall the application
pubtest : publish app to test.pypi.org
publish : publish app to pypi.org
setup : pip install requirements.txt
setupdev : pip install requirements-dev.txt
Example:
make setup
make clean
make install
-
Open a Command Line/Terminal Session
-
Change directories to a sutable location and checkout the repository
git clone https://www.github.com/William-Lake/job_finder.git
-
Change directories to
job_finder
and install dependencies# Install Dependencies in your Virtual Environment cd job_finder make setup
-
Add a recipient to initialize the the database.
# Note: change email address to the desired recipient. jobfinder ADD email@nowhere.com
The entry point for the application is aptly called, jobfinder
. The purpose of
this script is to manage interaction with the parser, recipient, and
smtp-sender.
The jobfinder
script provides three main functions:
- Add a recipient
- Remove a recipient
- Gather jobs/Review jobs/Notify recipients
To add a new recipient you would execute the jobfinder
script, passing in the
ADD
keyword followed by the recipient's email address, like so:
# Add a single recipient to the database
jobfinder ADD test@email.com
You can also add a list of recipients, however they need to be in a *.txt
file
with One Recipient per Line.
# Add a list of recipients to the database using a file
jobfinder ADD recipients_to_add.txt
To remove a recipient you would execute the jobfinder
script, passing in the
REMOVE
keyword followed by the recipient's email address, like so:
# Remove recipient form the database
jobfinder REMOVE test@email.com
You can also remove a list of recipients, however, they need to be in a *.txt
file with One Recipient per Line.
# Remove a list of recipients from database using a file
jobfinder ADD recipients_to_remove.txt
To perform the default Job_Finder
functions, you would execute the jobfinder
script with no arguments:
# Launch jobfinder to parse jobs, and email recipients
jobfinder
jobfinder
uses email
to notify recipients of jobs that have either
closed or opened recently.
In order to do so, email
needs a useable email address and password,
as well as smtp and port info. This information is stored in a database table
named jobfinder.db
for SQLite3, and in a Schema named jobs
in
the default PostgreSQL
installation.
Access to the SQLite3 Database can be found at the following locations:
For Windows
C:\Users\%username%\AppData\Local\jobfinder\jobfinder.db
For Linux | MacOSX
$HOME/.local/share/jobfinder/jobfinder.db
The data required for the props
table (SQLite | PostgreSQL) is as follows:
SMTP=test.server.net
PORT=1234
EMAIL=email@test.net
PASSWORD=password
NOTE: Your password will be in plain text. This is not secure and will be addressed in future iterations.** Additionally,
emailer
has only been tested with one email and may not work with others.
The database used for this project (currently) is sqlite. The included
sqlite.sql
script shows the current database structure.
This repository currently only gathers State of Montana IT Jobs. It would be useful to combine this functionality with jobs gathered from the private and/or non-profit sector.
Additionally, it will likely be useful at some point to provide a web interface to display the currently gathered jobs. This list has some potentially useful apis that could help with this.