Бібліотека буде працювати з більшостями доменів "ПС-Деканат". При розробці бібліотеки, функціонал тестувався на домені ІФНТУНГ, однак інші домени повинні також працювати.
pip install ps-scheduleДля цього просто копіюємо ось цю частину посилання на розклад вашого ВНЗ:
![]()
Імпортуємо базові класи:
from ps_schedule import Schedule, ScheduleParametersВставляємо домен у поле domain класу Schedule та задаємо параметри для отримання розкладу групи:
schedule = Schedule(domain="https://dekanat.nung.edu.ua/", params=ScheduleParameters(group="ІП-24-1К")).get()Обробляємо дані:
# Отримуємо розклад на сьогодні (перший у списку)
table = schedule[0]
# Виводимо дату таблиці розкладу на сьогодні в консоль
print(f"===| {table.date} |===")
# Проходимось по парам на сьогодні
for lesson in table.lessons:
# Перевіряємо чи є пара
if lesson.description:
# Виписуємо в консоль час початку пари, час кінця пари і її опис.
print(f"[{lesson.start_time} - {lesson.end_time}]: {lesson.description}")Ця бібліотека використовує BeautifulSoup щоб парсити HTML з сторінки яку ви бачите коли заходите на розклад у браузері (тому що немає публічного API).
Якщо якимось чудом структура HTML поміняється або навіть відрізняється конкретно у вашого ВНЗ, то можливо парсер не буде парсити (це мало вірогідно, зазвичай ПС-Розклад однаковий для всіх).
Дуже бажано не робити 1000 запитів на секунду, і робити тривалі паузи між ними, бо є два варіанти:
- Ви покладете картоплину на якій ця чудо система працює.
- Сервер вас пошле 403-м кодом.
Приємного користування 😊