Skip to content

Latest commit

 

History

History
66 lines (46 loc) · 2.11 KB

README.md

File metadata and controls

66 lines (46 loc) · 2.11 KB

HuskyFetch: Course Auditing for All

GitHub issues

Table of Contents

Overview

HuskyFetch is a web app that allows you to easily audit UW courses. It scrapes the UW course catalog and caches the data in a database. You can then search the database for courses that meet your criteria, especially ones which start soon or have open seats.

Try it out at https://huskyfetch.leibmann.org! A screenshot of the site

Some important features:

  • Small classes are ignored, as you're much more likely to be called out for auditing
  • Most start times are correct, but there are still some issues with parsing
  • Originally, many more events would be supported, such as club events and busy places near UW (from the google maps API)

Technologies

This project is created with:

Getting Started

Self-hosting the site is easy

First, ensure you have poetry installed
sudo python3 -m pip install poetry

Now, clone the repo and install the dependencies \

git clone https://github.com/Pop101/HuskyFetch
cd HuskyFetch
poetry install

Finally, run the webserver
poetry run python3 webserver.py

Last step: pray UW doesn't IP ban you for scraping their site

If UW IT is reading this, thanks for not banning me yet!

Usage

Just connect to the webserver! http://localhost:7575

Scraping occurs automatically every hour, an interval you can change at the top of webserver.py:

DATABASE_PATH = "database.pk"
UPDATE_INTERVAL = 3600