Данный бот помогает узнавать расписание предметов для студентов, обучающихся на программе "Прикладная математика и информатика" в Высшей школе экономики.
Отображение расписания с сайта НИУ ВШЭ в удобном виде в Telegram.
В этом проекте я освоил:
- python-telegram-bot v20.x
- selenium-webdriver
- beautiful-soup-4
- sqlite3
- классы и декораторы
В данном проекте был создан бот с использованием библиотеки python-telegram-bot
, который по желанию пользователя отправляет сообщение с расписанием на текущий\любой день недели или показывает следующую пару.
В сообщении для каждой пары содержится:
- время
- тип
- название
- имя преподавателя
- аудитория, в которой проходит пара
Расписание автоматически обновляется раз в сутки. Предметы берутся с сайта НИУ ВШЭ, путем извлечения кода при помощи selenium
, так как расписание подгружается на сайт динамически. Далее при помощи beautiful-soup-4
из нужных классов извлекается информация о предметах, которые будут проходит у студентов. Расписание строится на неделю вперед, начиная с текущего дня.
Для получения расписания, пользователю будет предложено выбрать год поступления на первый курс и группу, в которой он обучается. Эти данные сохраняются в базу данных и затем используются при отправке расписания.
Пользователь может запросить расписание на текущий день (/day), следующий день (/tomorrow), на день недели по выбору (/week) или узнать, какая у него следующая пара (/next).