Schedule¶
-
class
scheduler.
Date
¶ Вспомогательный класс, содержащий строковые представления дат
-
property
day_after_tomorrow
¶ Возвращает послезавтрашнюю дату в формате ГГГГ-ММ-ДД
-
property
today
¶ Возвращает сегодняшнюю дату в формате ГГГГ-ММ-ДД
-
property
tomorrow
¶ Возвращает послезавтрашнюю дату в формате ГГГГ-ММ-ДД, если сегодня суббота, завтрашнюю в любой другой день
-
property
-
class
scheduler.
Schedule
(date: str, gid: str = '324')¶ Класс, переводящий расписание из сырой веб-страницы в читаемую строку
-
date
¶ Дата в формате ГГГГ-ММ-ДД, используемая для получения расписания
- Type
str
-
gid
¶ Идентификатор группы, для которой нужно получать расписание
- Type
str
Пример
d = Date() # Новый объект конструктора дат sch = Schedule(d.today) # Новый объект конструктора расписания sch.get_raw() # Соединение с сервером, получение свежего # расписания на сегодня if sch.is_exist(): # Проверка наличия расписания text = sch.generate() # Генерация расписания в читаемом виде
-
clean
() → List[list]¶ Чистит объект вебскрапера от мусорных данных и оставляет только то, что относится к расписанию
- Результат
Список со списками. Каждый вложенный список описывает пару ( номер, название предмета, преподавателя, кабинет)
- Тип результата
List[list]
-
generate
() → str¶ Собирает расписание в читаемую строку
-
get_raw
()¶ Подключается к серверу и получает расписание как объект вебскрапера
-
is_exist
() → bool¶ Проверяет наличие расписания, основываясь на присутствии плашек «Расписание отстутствует» и «Расписание составлено, но не опубликовано» и содержимом таблицы с расписанием
- Результат
Флаг, указывающий на существование расписания
- Тип результата
bool
-
-
scheduler.
listen
()¶ Слушает сервер на предмет наличия расписания. Если находит - отправляет, иначе ждет 15 минут
-
scheduler.
send
()¶ Отправляет расписание в активную беседу и в ЛС подписчикам рассылки «Расписание»