Неофициальная библиотека и CLI‑утилита для работы с расписанием Modeus (utmn.modeus.org). Код автоматизирует SAML + OAuth авторизацию и предоставляет удобный доступ к событиям календаря.
- Авторизация в Modeus через встроенный
ModeusClient. - Получение и нормализация списка событий расписания.
- Python 3.10 или новее.
- Библиотека
requests.
python -m pip install -r requirements.txtpython example.py --username stud0000xxxxxx@study.utmn.ru --password <пароль> --timezone Asia/Yekaterinburg --days 7Опции:
--timezone— часовой пояс (по умолчаниюUTC).--days— сколько дней включить в расписание (по умолчанию 14).--start— ISO8601-время начала интервала (по умолчанию текущий момент).--page-size— максимальный размер страницы в ответе API.--from-week-start— задаёт --start как начало текущей недели
from modeus_client import ModeusClient
client = ModeusClient("stud0000xxxxxx@study.utmn.ru", "пароль")
client.authenticate()
schedule = client.fetch_schedule(days=7, timezone_name="Asia/Yekaterinburg")
for event in schedule["events"]:
print(event["title"], event["start"])Класс ModeusClient инициирует сессию авторизации и предоставляет методы:
authenticate()— прохождение SAML + OAuth и сохранение токенов;fetch_events(...)— получение «сырых» событий календаря;fetch_schedule(...)— агрегированная структура с событиями и вспомогательной информацией.
- Проект не связан с Modeus или ТюмГУ официально.
Делайте что угодно на свой страх и риск.