|
Введение
В данный момент олимпиады дают большие возможности для учеников, но подготовка к ним является огромной проблемой. Чтобы решить это мы решили создать телеграмм бота.
Бот сможет создать вариант олимпиады по разным предметам, отрегулировать их сложность, а также продемонстрировать их решение. Мы считаем, что такой подход сможет помочь школьникам набрать более высокие баллы.
В нашем работе мы используем разные уровни олимпиад, победа в данных олимпиадах могут давать разные льготы при поступлении в ВУЗы. Сложность данных олимпиад разбивается на 3 уровня.
Аннотация
Создание бота по подготовке к олимпиаде. Бот сможет создать вариант олимпиады по разным предметам, отрегулировать их сложность, а также продемонстрировать их решение. Мы считаем, что такой подход сможет помочь школьникам набрать более высокие баллы.
Гипотеза: Если освоить определённую программу, то можно создать телеграмм бота на языке Python.
Объект исследования: Язык программирования Python и мессенджер “Telegram”
Предмет исследования: Бот по подготовке к олимпиаде
Цель работы: Создание бота по подготовке к олимпиаде
Задачи:
Создать базу олимпиадных заданий различной сложности
Создания Телеграмм бота на языке Python
Тестирование на небольшой группе учеников
Глава I. Telegram. Telegram бот.
Telegram — это облачный мессенджер для мобильных устройств и компьютеров.
Быстрый и безопасный.
Боты — специальные аккаунты в Telegram, созданные для того, чтобы автоматически обрабатывать и отправлять сообщения. Пользователи могут взаимодействовать с ботами при помощи сообщений, отправляемых через обычные или групповые чаты. Логика бота контролируется при помощи HTTPS запросов к нашему API для ботов.
Преимущества Telegram.
Девять причин пользоваться Telegram(Рис. 1.):
Рис. 1. Девять причин пользоваться Telegram.
Глава II. Создание телеграмм-бота.
Месенджеры являются наиболее доступным средством взаимодействия с ботами.
Telegram имеет наиболее обширные возможности для работы с ботами среди месенджерей.
Для создания рабочего бота, нам понадобятся следующие инструменты:
Установленный язык программирования “Python”.
Любое приложения для более удобного написания кода (PyCharm, Visual Studio Code и т.д)
Библиотека для работы с ботами “pyTelegramBotAPI”, и библиотека для работы с pdf файлами “fpdf2”.
Получим токен бота при помощи телеграм-помошника “BotFather”.
Напишем приветственное сообщение в виде меню выбора предмета.
Выбрав предмет, бот будет предлагать на выбор предметы и уровень олимпиады.
Напишем алгоритм подбора заданий, исходя из выбранных выбранных пользователем параметров.
Все задачи поместим в один файл, который будет отправлен пользователю.
Рис. 2. Импорт библиотек.
Импортируем нужные библиотеки, и зададим переменные отвечаю за предмет (sub) и за его уровень (lev). Также создадим бота и введём его ранее полученный токен. Затем создаём стартовое сообщение, в котором зададим специальные кнопки при помощи модуля ”types”(Рис.2.).
Рис. 3. Выбор уровня.
Теперь сделаем так, чтобы бот проверял введённой пользователем предмет и в зависимости от него будет меняться переменная, отвечающая за предмет (sub) после чего бот по тому же принципу, предложит выбор уровня.
Рис. 4. Сгенерированный вариант документа
Выбрав уровень, бот проверяет значения переменной sub (т.е нашего предмета) и в зависимости от него начинает генерацию варианта при помощи библиотеки fpdf2, после чего бот присылает документ и предлагает сгенерировать ещё вариант.
Готовый продукт можете посмотреть по ссылке:
https://t.me/olympiadnick_bot
Или отсканируйте QR код.
Заключение:
Данный проект ориентирован на помощь школьникам. Телеграмм бот – один из хороших вариантов для подготовки к олимпиадам, чтобы отработать навыки по решению задач и получить максимальный балл.
С мыслью о создание бота пришла мысль не только о том, что этот проект для развития способностей у школьников, но и в первую очередь — это отличная возможность получить разные льготы при поступлении в ВУЗы
Список используемых источников:
https://www.python.org – Официальный сайт Python;
https://ru.wikipedia.org/wiki/Бот_(программа) - Материал из Википедии — свободной энциклопедии;
https://pypi.org/project/pyTelegramBotAPI/ - Простая, но расширяемая реализация Python для Telegram Bot API;
https://telegram.org/ - Официальный сайт Telegram;
https://tlgrm.ru/docs/bots - Боты: информация для разработчиков;
https://stepik.org/course/80782/info - Быстрый старт в искусственный интеллект;
https://stepik.org/course/4852/info - Введение в Data Science и машинное обучение.