Skip to main content

UE Katowice class schedule utility library

Project description

UE Class schedule utility library

A utility library used to download, filter and export class schedule at University of Economics in Katowice. Imports data from "Wirtualna uczelnia".

Each students gets a constant schedule id which is used to generate the schedule.

You can get your ID by going to "Wirtualna uczelnia" > "Rozkład zajęć" > "Prezentacja harmonogramu zajęć" > "Eksport planu do kalendarza".

The url ends with /calendarid_XXXXXX.ics, the XXXXXX will be your ID.

Installation

pip install ue-schedule

You can then run the ue-schedule tool from your shell like

ue-schedule <schedule_id>

Development

You can install dependencies in a virtualenv with poetry

poetry install

# switch to the virtualenv
poetry shell

Usage

from ue_schedule import Schedule

# initialize the downloader
s = Schedule(schedule_id)

# get event list
schedule.get_events()

# get event list as iCalendar
schedule.get_ical()

# get event list as json
schedule.get_json()

Data is automatically fetched when exporting, but you can force fetch with

schedule.fetch()

If you need to dump the event list and load later

# dump the event list
events = schedule.dump_events()

# load the event list
schedule.load_events(events)

If there's a need to format the list acquired with .get_events(), you can use format functions

# format event list as ical file
Schedule.format_as_ical(events)

# format event list as json
Schedule.format_as_json(events)

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

ue-schedule-2.1.3.tar.gz (6.1 kB view hashes)

Uploaded Source

Built Distribution

ue_schedule-2.1.3-py3-none-any.whl (7.1 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