Skip to main content

Browse BCIT Flex course offerings.

Project description

ci

BCIT Flex

Webscrape BCIT available courses, quickly view course offerings and write the information to a text file

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

The information is

  • Code
  • Name
  • Prerequisites
  • Credits
  • URL
  • Offerings
    • Instructor
    • Price
    • Duration
    • Meeting Times
    • Status
    • Rate My Professor URLs

Installation

  • Clone the repository
  • Install the requirements poetry install

Note: Additionally a PostgreSQL instance is required for the database.

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
  1. Build schema using alembic:
poetry run alembic upgrade head
  1. Populate the database with subjects from psql:
\i bcitflex/scripts/populate_subject.sql

Usage

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

poetry run flask --app bcitflex load-db

To run the webserver:

poetry run flask --app bcitflex run

Supports

  • Displaying all course offerings for specific course
  • Saving all courses to a text file for a specific subject

TODO

  • Filter by prerequisites
  • Individual Course Offerings
  • Rate My Professors
  • Web app
  • GUI
  • Return RMP rating

Contributors

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

bcitflex-3.1.0.tar.gz (23.3 kB view hashes)

Uploaded Source

Built Distribution

bcitflex-3.1.0-py3-none-any.whl (36.6 kB view hashes)

Uploaded Python 3

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