Если вы ищете, как быстро создать Telegram-бота на Python, связка aiogram 3 + BotFather — один из самых удобных вариантов. Ниже — понятный пошаговый разбор для новичков и тех, кто переходит с aiogram 2.
Что такое aiogram 3
- Это асинхронный Python-фреймворк для разработки Telegram-ботов
- Работает через Telegram Bot API
- Подходит для команд, кнопок, FSM, middleware, фильтров и интеграций с БД/API
- В версии 3 изменилась архитектура: вместо старого подхода активно используются Router, новые фильтры и более чистая структура проекта
Что нужно перед стартом
- Python 3.10+
- Токен бота от @BotFather
- Установленный пакет aiogram
Команда установки:
pip install aiogramШаг 1. Создайте бота
- Откройте @BotFather
- Выполните команду /newbot
- Задайте имя и username
- Сохраните токен — он понадобится в коде
Шаг 2. Минимальный бот на aiogram 3
import asyncio
from aiogram import Bot, Dispatcher, Router
from aiogram.filters import Command
from aiogram.types import Message
TOKEN = "ВАШ_ТОКЕН"
router = Router()
@router.message(Command("start"))
async def start_handler(message: Message):
await message.answer("Привет! Бот на aiogram 3 запущен 🚀")
async def main():
bot = Bot(token=TOKEN)
dp = Dispatcher()
dp.include_router(router)
await dp.start_polling(bot)
if __name__ == "__main__":
asyncio.run(main())Шаг 3. Как запустить
- Сохраните файл как bot.py
- Выполните в терминале:
python bot.py- Откройте бота в Telegram
- Отправьте /start
Что здесь происходит
- Bot — подключение к Telegram API
- Dispatcher — обработка входящих событий
- Router — маршрутизация хендлеров
- @router.message(Command("start")) — обработчик команды /start
- start_polling() — запуск бота в режиме long polling
Частые ошибки ⚠️
- Unauthorized — неверный токен
- Conflict: terminated by other getUpdates request — бот уже запущен где-то ещё
- Команда /start не работает — проверьте, подключён ли router через dp.include_router(router)
- Ошибка импорта — убедитесь, что установлен именно актуальный aiogram
Почему aiogram 3 удобен
- Чистая архитектура проекта
- Простое масштабирование под большой бот
- Удобная работа с фильтрами и состояниями
- Хорошо подходит для production-задач 💡
Когда использовать webhook вместо polling
- Если нужен production на сервере
- Если важна стабильная доставка обновлений
- Если бот интегрирован с веб-приложением или backend
Для первых шагов polling проще и быстрее, а для боевого проекта чаще выбирают webhook.
Итог: чтобы написать Telegram-бота на Python с aiogram 3, достаточно создать токен, установить библиотеку, подключить Router и запустить polling. Это хорошая база для команд, меню, inline-кнопок и более сложной логики. ✅
👀 Ниже стоит посмотреть подборку каналов про IT — там часто публикуют полезные разборы, инструменты и практические кейсы.