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

pip install bcitflex

Prerequisites

  • A PostgreSQL instance is required for the database.
  • Dependency psycopg2 requires libpq-dev to be installed for Ubuntu/Debian systems.
sudo apt install libpq-dev python3-dev

For more details see the pycopg2 documentation and StackOverflow.

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:
flask --app bcitflex upgrade-db
  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 dev 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.4.tar.gz (24.1 kB view details)

Uploaded Source

Built Distribution

bcitflex-3.1.4-py3-none-any.whl (36.8 kB view details)

Uploaded Python 3

File details

Details for the file bcitflex-3.1.4.tar.gz.

File metadata

  • Download URL: bcitflex-3.1.4.tar.gz
  • Upload date:
  • Size: 24.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for bcitflex-3.1.4.tar.gz
Algorithm Hash digest
SHA256 b390039b6be8986fbeb67da687d9a3161a2dddfe567b286f922c61ddb23a0fcf
MD5 e251a412b8b81b4ff17fd87b3fba931e
BLAKE2b-256 a2422f6d45ec18ed0b86c75f6665f64b221c60793e032d1cdb096bda94009cca

See more details on using hashes here.

File details

Details for the file bcitflex-3.1.4-py3-none-any.whl.

File metadata

  • Download URL: bcitflex-3.1.4-py3-none-any.whl
  • Upload date:
  • Size: 36.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for bcitflex-3.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 55243ca896a83ba82bc16853985e02d0bf46c27e7686bc768b558ab67ba097b6
MD5 e7a632c3c287c50ee722dd44b6543c7b
BLAKE2b-256 72ba6c18fca86ceaf4ae0ee47ad65bddc07770ff5e0ab9911b0f7b106be26007

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