Язык разработки: Python
Дата разработки: апрель - июнь 2020 года
Используемые библиотеки: math, telebot, scipy, decimal
Я хотел обучится созданию телеграм-ботов на хорошем практическом проекте. Также, чтобы хорошо сдать экзамен по теории вероятностей, который должен проходить дистанционно мне нужна была программа, с помощью которой, я мог бы дать быстрый и правильный ответ. Таких программ в Интернете я не нашёл. В связи с этим, чтобы убить двух зайцев (попрактиковаться в написании ботов и решить проблему с программой для экзамена), я и решил создать подобного бота.
- Изучение основ теории вероятности
- Обзор методов создания ботов для Телеграм
- Реализация основной структуры программы
- Написание библиотеки для решения задач по теории вероятностей
- Реализация управления ботом
- Улучшение эргономики
- Деплой
Для того, чтобы создать нового бота в Телеграм, нужно написать BotFather. Сначала отправляем ему команду /start
, а затем /newbot
. Затем нужно придумать боту имя, которое ещё не используется. И всё. Бот сознан. BotFather выдаст токен, который надо будет добавить в файл config.py, в моём случае. Или же можно просто напрямую добавить токен в главный "PY" файл.
bot = telebot.TeleBot('<сюда пишем ваш токен>')
Перед запуском не забудьте импортировать библиотеку telebot. Для этого необходимо, чтобы библиотека была установлена на вашем компьютере. Установка выполняется с помощью команды:
pip install pyTelegramBotAPI
Так как на использование мессенджера на территории России наложены ограничения, просто так запустить бота, например, из PyCharm не получится. Решить эту проблему можно несколькими путями. Можно работать через проки-сервер, либо через VPN. Я остановился на последнем варианте. Я использовал Windscribe VPN-сервис. Подробнее о решении проблемы блокировки можно почитать здесь.
Ресурсы для изучения теории вероятностей и статистики:
- Гмурман В.Е. Руководство к решению задач по теории вероятностей и математической статистике / М. - "Высшая школа", 2004
- http://www.ekonomika-st.ru/drugie/metodi/t-ver-1-4.html
Видео, которые помогли мне разобраться в технологии написания ботов: