WaterlooWorks Productivity Suite
(Successor of JobMine EZSearch)

Introduction

WaterlooWorks Productivity Suite is a series of scripts designed to facilitate students finding suitable co-op positions through WaterlooWorks, the current co-op platform used by the University of Waterloo.

It can download all 3000+ jobs from WaterlooWorks, generate Word documents from them, and notifiy users when they are selected for interviews.

About one month after I placed the scripts on my public Github profile (under MIT License), Waterloo's Co-operative Education & Career Action office requested that I remove them from public domain due to what could have been a copyright violation, and failure to do so would have escalated this case "to the Associate Dean, Undergraduate Studies, for disciplinary review under Policy 71 - Student Discipline."

And that's why this script is no longer publicly available.

Technical Components

WaterlooWorks Productivity Suite consists of three Python scripts.

Job Download

  • Web scrapper that uses student's credentials to log into account and download all jobs into a local Sqlite database taht students could query from to more quickly find desirable jobs
  • To run the script:
    • To download jobs, create a credentials.txt in the project's root (this file won't be pushed to remote repositories because it is already included in .gitignore) and type your username in the first line and your password in the second line
    • Run $python setup.py

Document Generation

  • Generates Word document containing information related to every job stored in local database
  • Word document has 8000+ pages and ~1.3M words
  • To run the script:
    • Run $python generateWord.py dbName.db

Interview Notification

  • Uses student credentials to log into student account and check for new interviews
  • To run the script:
    • Schedule the script to run in Task Scheduler (Windows)
    • Uncomment the outermost while loop to repeatedly poll WaterlooWorks for new interviews. Run with $python interviewChecker.py