Skip to content

Скрипт, позволяющий спарсить расписание с сайта МИЭТ в ics-файл

License

Notifications You must be signed in to change notification settings

MPSU/schedule_parser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Парсер расписания МИЭТ

Скрипт, позволяющий сгенерировать ics-файл для расписания конкретной группы, или же для занятий указанных групп конкретного преподавателя. Файл подобного формата можно импортировать в большинство онлайн-календарей. Скрипт способен обрабатывать ситуации начала семестра не с понедельника.

Для простоты работы, считается что большая перемена всегда происходит после второй пары. Скрипт генерирует занятие, которое повторяется 5 раз с периодичностью в 4 недели для каждой из недель (1-го числителя, 1-го знаменателя, 2-го числителя, 2-го знаменателя). Иными словами, если занятие проходит каждую неделю, вместо создания одного события, которое повторяется 20 раз каждую неделю, будет создано 4 события на 4 чередующиеся недели, каждое из которых повторяется 5 раз.

Событие повторяется 5 раз, а не 4, чтобы занятия попали и на 17-18ую недели. Можно генерировать и 16-недельное расписание, для этого необходимо изменить значение переменной repeat_number на 4.

Для работы скрипта требуется сторонняя библиотека icalendar, которую можно установить командой:

pip install icalendar

Перед запуском скрипта, необходимо указать режим работы (для студента или для преподавателя), а также группу/группы, преподавателя и дату начала семестра (см. "Область конфигурации" скрипта).

В режиме работы для студента скрипт парсит расписание только одной группы и создает расписание всех её занятий.

В режиме работы для преподавателя скрипт парсит расписание всех указанных групп и создает расписание тех занятий, которые ведет указанный преподаватель у этих групп.

В скрипте можно настроить длину академического часа, а также длинной и короткой перемен.

Кроме того, в скрипте можно указать словарь для замены длинных названий на удобные пользователю аббревиатуры.

Известные проблемы

При импорте не в дефолтный календарь сервиса Google Calendar, напоминания о событии не добавляются. При импорте в дефолтный календарь все работает как надо, т.е. создаются напоминания за 15 минут до начала занятия. Это проблема Google Calendar, а не скрипта, см. посты тут, тут и тут.

About

Скрипт, позволяющий спарсить расписание с сайта МИЭТ в ics-файл

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages