Skip to main content

Check for course overlaps at Graz University of Technology

Project description

tug-overlap-checker

Check for course overlaps at Graz University of Technology 🎓

The tool will get the dates and times for specified courses, compare them, and report any conflicts.

Installation

pip install tug-overlap-checker

Usage

$ tug-overlap-checker -h
usage: tug-overlap-checker [-h] courseid [courseid ...]

positional arguments:
  courseid    course ids

optional arguments:
  -h, --help  show this help message and exit

The courseid argument can be repeated to specify multiple. This is the ID that is found in the URL of TUGO, not the visually displayed class ID. This may be changed in the future so the conventional IDs can be used.

E.g.:
https://online.tugraz.at/tug_online/ee/ui/ca2/app/desktop/#/slc.tm.cp/student/courses/xxxxxx <--

Example Usage

$ tug-overlap-checker 226888 221424 225088
Found course: Information and Communication Management, with 3 appointments.
Appointment: date: 2020-06-17, time range: ['13:30', '21:00']
Appointment: date: 2020-06-18, time range: ['09:30', '20:00']
Appointment: date: 2020-06-19, time range: ['08:00', '14:00']

Found course: Entrepreneurship, with 6 appointments.
Appointment: date: 2020-04-01, time range: ['14:00', '17:30']
Appointment: date: 2020-05-04, time range: ['09:00', '18:00']
Appointment: date: 2020-05-05, time range: ['09:00', '18:00']
Appointment: date: 2020-05-06, time range: ['09:00', '18:00']
Appointment: date: 2020-05-07, time range: ['09:00', '18:00']
Appointment: date: 2020-05-08, time range: ['09:00', '18:00']

Found course: Marketing Management, with 7 appointments.
Appointment: date: 2020-04-27, time range: ['12:00', '12:45']
Appointment: date: 2020-05-04, time range: ['09:00', '18:00']
Appointment: date: 2020-05-07, time range: ['08:15', '15:00']
Appointment: date: 2020-05-11, time range: ['08:15', '18:00']
Appointment: date: 2020-05-13, time range: ['08:15', '15:00']
Appointment: date: 2020-05-18, time range: ['08:15', '18:00']
Appointment: date: 2020-05-20, time range: ['08:15', '15:00']

Comparing "Information and Communication Management" and "Entrepreneurship"...
No date overlap.
Comparing "Information and Communication Management" and "Marketing Management"...
No date overlap.
Comparing "Entrepreneurship" and "Marketing Management"...
Found date overlap.
Conflicting dates:
2020-05-07
2020-05-04
Checking for time overlap on "2020-05-07"...
Times to check: ['09:00', '18:00'], ['08:15', '15:00']
Found time overlap.
For courses Entrepreneurship and Marketing Management on 2020-05-07
Checking for time overlap on "2020-05-04"...
Times to check: ['09:00', '18:00'], ['09:00', '18:00']
Found time overlap.
For courses Entrepreneurship and Marketing Management on 2020-05-04

Background

Due to many conflicting classes this semester and seeing how comparing them manually is a PITA, this tool was created to automate the process.

Since many different universities use the same online system, this may very well also work with other universities' sites like KFU. Changing the access URL is necessary for this though.

Unfortunately there is no API for TUGO, or at least none that is easily accessible for a small project like this (since Studo must have one), therefore the data is scraped from the website at generous intervals.

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

tug-overlap-checker-0.1.2.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tug_overlap_checker-0.1.2-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file tug-overlap-checker-0.1.2.tar.gz.

File metadata

  • Download URL: tug-overlap-checker-0.1.2.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/3.8.1

File hashes

Hashes for tug-overlap-checker-0.1.2.tar.gz
Algorithm Hash digest
SHA256 2e9bdf96b560518a8e3ff36b11c79a4a7ef8dfcf4dc2cedc0606c34348269944
MD5 53f1f8d14da4f11305fb44a9c3eb9002
BLAKE2b-256 552a63b6080886e1edf43b65c5099c80fd6ec07507dfc5c89d4016f1783f8f36

See more details on using hashes here.

File details

Details for the file tug_overlap_checker-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: tug_overlap_checker-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/3.8.1

File hashes

Hashes for tug_overlap_checker-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4cceb4f06ea3b276e2d205cf3f9689bd90544a87e4e0228bc8c5225f717177c2
MD5 af194d9f03dec251078f8e66c833380b
BLAKE2b-256 1712d8d998746189f22107f7b7eb3303db4647f8fceb2bba148b4df5f71b4a6e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page