jonbiemond / BCIT-Flex

A website for easily navigating BCIT courses and offerings.
https://www.bcitflex.tech
MIT License
10 stars 8 forks source link
bcit collaborate database hacktoberfest python tech web-scraping webscraper website

ci

BCIT Flex

www.bcitflex.tech

A website for easily viewing BCIT course offerings. Features a course filter to aid in course selection.

Please feel free to report any issues, bugs or suggestions. Pull requests are welcome.

Installation

pip install bcitflex

Prerequisites

DB Setup

PostgreSQL is used as the DBMS. To create and initialize the database:

  1. Create a database using the cli command. Pass --help for more information.
    flask --app bcitflex create-db
  2. Build schema using alembic:
    flask --app bcitflex upgrade-db
  3. Populate the subject table with the list of subjects to scrape courses for:
    flask --app bcitflex load-subjects

    By default, subjects COMP, MATH, COMM AND BLAW are loaded. To load all subjects pass the --all-subjects flag.

Usage

To run the webscraper and populate the database with the latest course offerings:

flask --app bcitflex load-db

To run the dev webserver:

flask --app bcitflex run

Roadmap

Contributors