Разработка телеграм-ботов увлекательный и прибыльный процесс. За урок мы с нуля разработаем Telegram Bot на основе языка Python.
Познакомившись с документацией из прошлой статьи , мы смело заходим в нашу среду разработки и начинаем творить!
В этой статье мы:
- "Свяжем" код и бота
- Создадим 3 функции для него(команды /start, /help и обработку текста)
- Изучим 2 способа ответа бота(bot.send_message, message.reply)
- Получим рабочего бота!
Важное примечание! Если до этого вы никогда не занимались питоном, то лучше пройдите любой базовый курс и возвращайтесь, так будет больше вероятность, что вы не сдадитесь (:
Я буду работать со следующими программами (ссылки на скачивание прикрепляю) :
Конечно же сам Python 3.10
И среда разработки PyCharm 2022.1 Professional.
Кстати, если вы студент, то можете воспользоваться годовой подпиской на продукты от JetBrains, куда входят PyCharm и Intellij IDEA. Уточните этот момент в вашем учебном заведении.
Приступаем.
Чтобы не теряться в понятиях, введем некий словарь с моим переводом (:
- Dispatcher - диспетчер, обеспечивающий взаимодействие с ботом
- Bot - объект бота
- types - это надо для сообщений
- executor - нужен для постоянного опроса обновлений от телеграма
(Библиотеку aiogram скачиваем в том же PyCharm и начинаем.)
Подробные комментарии представлены в самом коде ниже под знаком ##.
Запускаем программу и пишем /start нашему боту:
Отлично, код работает!
По этикету, в боте должна быть еще и команда /help. Она будет объяснять что наш бот умеет и как это получить.
Для начала сделаем обычного эхо-бота, т.е. он будет отправлять в ответ то же самое, что и прислал пользователь.
Важное примечание о пустом хэндлере!
Пустой хэндлер всегда должен быть в самом низу программы, иначе есть риск сломать ее (как именно я не знаю, но он должен быть внизу)
Shift+F10....
Поздравляю с первым полноценным ботом!
Завтра научимся добавлять меню вместо клавиатуры и кнопки, прикрепленные к сообщению!
Если есть какие-либо вопросы, то задавайте их в комментариях, с радостью помогу в чем смогу.
11010000 10100011 11010001 10000001 11010000 10111111 11010000 10110101 11010001 10000101 11010000 10111110 11010000 10110010 00100001! (Успехов!)