Погружение в aiogram (#2 ЭХО БОТ)

icon strelka icons icons

узнай больше на курсе

DevOps-инженер с нуля
Освой Linux, Docker, Kubernetes и CI/CD и собери свой пайплайн: 4 месяца онлайн, практика и сертификат. Смотри программу и тарифы.
Подробнее о курсе
Полный курс по сетевым технологиям
Разберись в TCP/IP, коммутации и маршрутизации с нуля: 2 месяца онлайн, лабы и сертификат. Открой программу и выбери свой тариф.
Подробнее о курсе
Python программист с нуля
Напиши первый код и собери проекты на Python: 4 месяца онлайн в своём темпе, практика и сертификат. Смотри программу и тарифы.
Подробнее о курсе

Введение

Ну вот наконец-то и начинается цикл статей по непосредственному написанию логики работы Telegram бота. Начнём погружение с достаточно тривиальной задачи ( примерно как “Hello, World!” на новом языке программирования), написание эхо бота.

Но для начала немного теории! 

Немного теории

Эхо-бот представляет из себя простого бота, задача которого возвращать пользователю все отправленные им сообщения.

На этом с теорией всё, переходим к практике!

Установка библиотеки

Для написания нашего первого серьёзного проекта будем использовать, как уже догадались, библиотеку aiogram версией 2.25.1 

(Note: здесь и в дальнейших статьях я буду все примеры кода запускать в IDE PyCharm и использовать версию Python 3.9)

Профессионалы могут в своей любимой IDE в терминале ввести команду pip install aiogram==2.25.1

А для тех, кто только учится, необходимо: 

  • Нажать сочетание клавиш Ctrl+Alt+S
  • Найти меню Project: “ИмяПроекта” и нажать на Python Interpreter
  • Следуем подсказкам 1-2-3

И теперь можно приступать к работе!

Set up конфигурация бота

Давай напишем самое минимальное, что необходимо будет абсолютно в каждом проекте.

  1. Импортируем необходимые файлы из библиотеки aiogram
  2. Создаём переменную и присваиваем ей значение токена бота (Токен это индивидуальный API ключ,  который присваивается каждому боту и необходим для взаимодействия программы с ботом)
  3. Создаём объекты бота и диспетчера. Объекту bot передается в качестве аргумента токен бота, а объекту dp в качестве аргумента передается объект bot.
  4. Используем конструкцию if __name__ == “__main__”: для запуска текущего файла напрямую. Это так называемая точка входа работы бота. Для запуска постоянного опроса входящих данных со стороны пользователя, используем операцию выполнения: executor.start_polling(dispatcher=dp). В качестве аргумента передаем нашего диспетчера.
  5. Теперь подошли к самому интересному. Обработка хэндлера сообщений. По своей сути это очередь сообщений, которые бот получает от пользователя. Для их создания будем использовать декоратор. Если не знаешь, что это за страшное слово, то самое время пройти курс Python с нуля , где сможешь узнать это и многое другое! Хэндлер сообщений пишется следующим образом -> @dp.message_handler(). За ним в обязательном порядке будет следовать асинхронная функция, в которой будет описан непосредственно функционал, который будет выполняться, после вызова текущего хэндлера. 
    async def echo_message(message: types.Message): Функция должна принимать аргумент с аннотацией типов types.Message, чтобы мы могли взаимодействовать со входящей информацией от пользователя. Для ответа ботом на сообщения напишим конструкцию: 
    await message.answer(text=message.text) Метод answer отвечает пользователю текстом, который был указан в аргументе text. 
    message.text содержит в себе сообщение, отправленное пользователем боту.

В следующих статьях более глубоко изучаем аргумент message, какие возможности он представляет, и что хранит в себе.

В итоге должна получится следующая программа

Бежим проверять как она работает.

Запускаем скрипт, переходим в диалоговое окно с ботом.

Видим, что при отправке сообщения, в ответ нам приходит тоже самое. Это и есть эхо бот!

Заключение

Вот и положено начало пути разработки ботов.  Дальше нас ждёт много увлекательной и интересной информации. 

Исходники скрипта я загружу на свой GitHub, откуда без проблем можно будет скачать и проверить как работает бот, только не забудь добавить свой API токен.

Ссылка
скопирована
Получите бесплатные уроки на наших курсах
Все курсы
icon strelka icons icons

узнай больше на курсе

DevOps-инженер с нуля
Освой Linux, Docker, Kubernetes и CI/CD и собери свой пайплайн: 4 месяца онлайн, практика и сертификат. Смотри программу и тарифы.
Подробнее о курсе
Полный курс по сетевым технологиям
Разберись в TCP/IP, коммутации и маршрутизации с нуля: 2 месяца онлайн, лабы и сертификат. Открой программу и выбери свой тариф.
Подробнее о курсе
Python программист с нуля
Напиши первый код и собери проекты на Python: 4 месяца онлайн в своём темпе, практика и сертификат. Смотри программу и тарифы.
Подробнее о курсе
Онлайн-курс по кибербезопасности
Научись защищать сети и данные и разбирать атаки: 2 месяца онлайн, практика в лабах и сертификат. Открой программу и тарифы.
Подробнее о курсе
Онлайн-курс по Linux
Освой терминал, службы и администрирование Linux: 2 месяца онлайн, практика на своём сервере и сертификат. Открой программу.
Подробнее о курсе
Автоматизированное тестирование на Python
Напиши автотесты на Python с Pytest и Selenium: 4 месяца онлайн, практика на реальных проектах и сертификат. Смотри программу.
Подробнее о курсе
Еще по теме:
Нейробиолог объясняет 5 утренних привычек, которые ухудшают концентрацию, настроение и сон, и предлагает научно обоснованные альтернативы.
Какие изменения ждут продакт-менеджеров в 2026 году: ориентация на результат, роль ИИ, коммуникация, простота и работа в экосистемах
Узнайте, что такое ATS, как она сканирует резюме, и получите пошаговую инструкцию с примерами для junior и senior специалистов по данным, ИИ и ML
Подробнейший гайд о самой актуальной и востребованной профессии в ИТ
Рассказываем про профессию, где можно легально и за хорошие деньги почувствовать себя хакером
ОСЕННИЕ СКИДКИ
30%
40%
50%
До конца акции: 30 дней 24 : 59 : 59