Skip to main content

Package and scripts for interacting with Waterloo Works

Project description

Waterloo Works

A set of utilities used for interacting with Waterloo Works.

This project contains a set of utilities for interacting with Waterloo Works for employers.

Getting started

pip3 install waterlooworks

# Required for Apache Tika
brew cask install java8

# Required for pdftotext
brew install poppler # https://formulae.brew.sh/formula/poppler

This package depends on tika-python which requires Java 7+.

This package relies on the great pdf-redactor library created by Joshua Tauberer. The the core of the pdf-redactor library is embedded in waterlooworks since it is not available on pypi.

Usage

$ waterlooworks --help
Usage: waterlooworks [OPTIONS] COMMAND [ARGS]...

  A set of utilities for analyzing and processing WaterlooWorks intern
  packages

Options:
  --help  Show this message and exit.

Commands:
  anonymize  Anonymize WaterlooWorks intern packages
  score      Analyze WaterlooWorks intern packages

Download the full resume package for interns from Waterloo Works

When logged into Waterloo Works, copy and past the contents of ww.js into the console. This script will trigger a dowload of the intern resume packages into your browser's Downloads folder. The script only downloads the packages visible on the current page, and not on additional paginated application pages.

pbcopy < ww.js

# 1. Log onto Waterloo Works, and navigate the the page containing applications
#    for your posting.
# 2. Paste into the console
# 3. Resumes for that page will be downloaded.

Print a table of scored / ranked waterlooworks packages

This script will output the metadata for resumes, in descending order based on the mean of term averages.

$ waterlooworks score data
1337 packages found
data/foo.pdf
data/bar.pdf
data/baz.pdf
...
| Foo | 4A | 11111111 | 4A Software Engineering |  {'OUTSTANDING': 2, 'EXCELLENT': 2} | [80.0, 80.0, 80.0, 80.0, 80.0] |
...

Anonymize Packages

This is a simple attempt to try and remove references to names, gender and other information irrelevant to a package.

 $ waterlooworks anonymize ~/wwdata/ ~/anon1
1337 packages found
data/foo.pdf
data/bar.pdf
data/baz.pdf
...

Caveats

These utilities are best effort and do not guarantee the data is accurate. If the format for packages changes, this library will break.

These scripts should not be the sole way of evaluating candidates, they should augment typical hiring workflows.

Contributing

If you have any ideas, just open an issue and tell me what you think.

If you'd like to contribute, please fork the repository and make changes as you'd like. Pull requests are warmly welcome.

Licensing

MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

waterlooworks-0.0.1.tar.gz (16.4 kB view details)

Uploaded Source

Built Distribution

waterlooworks-0.0.1-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

Details for the file waterlooworks-0.0.1.tar.gz.

File metadata

  • Download URL: waterlooworks-0.0.1.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

File hashes

Hashes for waterlooworks-0.0.1.tar.gz
Algorithm Hash digest
SHA256 51a01baec206aec3398089d621eae25be5feb9dbd7d53c3614232e817fcb094a
MD5 be21450febd7129b2e4b20f02474de44
BLAKE2b-256 f0d615f32e47794b1e5d67cf6e0a66476a2c751b1916a0786d9c56dc18074164

See more details on using hashes here.

File details

Details for the file waterlooworks-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: waterlooworks-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 15.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

File hashes

Hashes for waterlooworks-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 32696ad255b0ee8454582ba5f4140098c6dbc906da58c92497c8d0aa1cf869cc
MD5 1a2affc1fe3b6138aeb90abecf6dce4d
BLAKE2b-256 951d8657509cc249e96e93b82d34ce963c5b8ed79708b63060a541511486946e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page