Skip to main content

Python Version PyPI Version

⚠️ Це неофіційний, студентський проєкт, який витягує (парсить) розклад з пакету програм "ПС-Деканат", який використовується більшістю ВНЗ України.

Бібліотека буде працювати з більшостями доменів "ПС-Деканат". При розробці бібліотеки, функціонал тестувався на домені ІФНТУНГ, однак інші домени повинні також працювати.

Швидкий старт:

Встановлюємо бібліотеку з PyPI:

pip install ps-schedule

Отримуємо домен розкладу:

Для цього просто копіюємо ось цю частину посилання на розклад вашого ВНЗ: image

Базовий код

Імпортуємо базові класи:

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 запитів на секунду, і робити тривалі паузи між ними, бо є два варіанти:

  1. Ви покладете картоплину на якій ця чудо система працює.
  2. Сервер вас пошле 403-м кодом.

Документація

Приємного користування 😊

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ps_schedule-1.3.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

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

ps_schedule-1.3-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file ps_schedule-1.3.tar.gz.

File metadata

  • Download URL: ps_schedule-1.3.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ps_schedule-1.3.tar.gz
Algorithm Hash digest
SHA256 b08d88d4a4e0fac0bdd310f02107013fddd872838a502c9121be26ddb11bb498
MD5 ec2e4f25fe25ea77aaa85d684b11f66f
BLAKE2b-256 8453ff873b30d52006318465dd45238b50a8ea26880efa7fe7beed24027de922

See more details on using hashes here.

Provenance

The following attestation bundles were made for ps_schedule-1.3.tar.gz:

Publisher: workflow.yml on olekstsu/ps-schedule

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ps_schedule-1.3-py3-none-any.whl.

File metadata

  • Download URL: ps_schedule-1.3-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ps_schedule-1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 500baf0344dfdb65847a0ad1d745ba44819bf81bbe0c49dccb60a738a362eea8
MD5 625a9fc73b448a289b4ca6ae95a943b3
BLAKE2b-256 01f3862c421f405f8d9b8ca86a3c345ccfc6d90d111482e3b02c584889e44a3a

See more details on using hashes here.

Provenance

The following attestation bundles were made for ps_schedule-1.3-py3-none-any.whl:

Publisher: workflow.yml on olekstsu/ps-schedule

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.3 This release

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.1

2 files

1.1.0

2 files

1.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page