Python-библиотеки для ботов MAX: сравниваем max-botapi-python, maxapi и aiomax
MAX мессенджер — 100 млн пользователей, Telegram заблокирован. Разбираем три Python-библиотеки для разработки ботов: официальную max-botapi-python, maxapi и aiomax. Код, отличия, что выбрать.
Содержание статьи
MAX — мессенджер от VK — в марте 2026 перешагнул отметку 100 млн пользователей. С сентября 2025 он предустановлен на все смартфоны в России. После блокировки Telegram в апреле 2026 интерес к ботам для MAX резко вырос.
В этой статье разберём три Python-библиотеки для разработки ботов MAX, сравним их и покажем рабочий код.
Важное ограничение перед стартом
Прежде чем писать код — ключевой факт: регистрация бота на платформе MAX доступна только для юридических лиц и ИП-резидентов РФ. Это официальное требование платформы, подтверждённое в документации dev.max.ru.
Если у тебя нет статуса ИП или юрлица — ботов через официальное Bot API создать не получится. Альтернатива для физлиц — конструкторы ботов типа BotHelp или Senler, которые работают как посредники.
Для ИП и компаний — продолжай читать.
Три Python-библиотеки для ботов MAX
На сегодня существуют три активно развиваемых варианта:
| Библиотека | Автор | Статус | Установка |
|---|---|---|---|
max-botapi-python | max-messenger (VK) | Верифицирована командой MAX | pip install git+https://github.com/max-messenger/max-botapi-python.git |
maxapi | love-apples (сообщество) | Неофициальная, PyPI, вышла 27.03.2026 | pip install maxapi |
aiomax | dpnspn (сообщество) | Неофициальная, GitHub | pip install git+https://github.com/dpnspn/aiomax.git |
Кроме них есть maxapi-python (другой пакет!), pymax, maxgram — но они менее активны или заброшены.
Как зарегистрировать бота
Независимо от выбранной библиотеки, бот регистрируется через @MasterBot внутри самого мессенджера MAX:
- Открой MAX, найди бота
@MasterBot - Напиши команду
/newbot - Придумай имя пользователя — оно должно быть длиннее 11 символов и заканчиваться на
_botилиbot - После проверки получишь токен в разделе Чат-боты → Интеграция → Получить токен
- Добавь токен в
.env:
MAX_TOKEN=твой_токен_здесь
После регистрации назначь боту права администратора в чате, где он будет работать — иначе события не придут.
max-botapi-python — официальная библиотека
Это форк, верифицированный командой MAX. Поддерживает два режима: polling (для разработки и небольших ботов) и webhook (для продакшна).
Установка
pip install git+https://github.com/max-messenger/max-botapi-python.git
# Для webhook:
pip install "git+https://github.com/max-messenger/max-botapi-python.git[fastapi]"
Минимальный бот (polling)
import asyncio
import os
from dotenv import load_dotenv
from max_bot_api import Bot
from max_bot_api.types import NewMessageBody
load_dotenv()
bot = Bot(token=os.getenv("MAX_TOKEN"))
@bot.on_bot_started()
async def on_start(update):
await bot.send_message(
chat_id=update.chat_id,
body=NewMessageBody(text="Привет! Я бот в MAX.")
)
@bot.on_message_created()
async def on_message(update):
text = update.message.body.text or ""
if "привет" in text.lower():
await bot.send_message(
chat_id=update.message.recipient.chat_id,
body=NewMessageBody(text="Привет!")
)
asyncio.run(bot.start_polling())
Webhook-режим (FastAPI)
from fastapi import FastAPI
from max_bot_api import Bot
from max_bot_api.types import NewMessageBody
import os
app = FastAPI()
bot = Bot(token=os.getenv("MAX_TOKEN"))
@bot.on_message_created()
async def on_message(update):
await bot.send_message(
chat_id=update.message.recipient.chat_id,
body=NewMessageBody(text=f"Ты написал: {update.message.body.text}")
)
app.include_router(bot.get_webhook_router(path="/webhook"))
Запуск: uvicorn main:app --host 0.0.0.0 --port 8000
maxapi — сообщественная библиотека с документацией
maxapi (github.com/love-apples/maxapi) вышла на PyPI 27 марта 2026. Синтаксис намеренно близок к aiogram 3 — если ты уже работал с Telegram, освоишься быстро.
Установка
pip install maxapi
# Опционально: для webhook на FastAPI или Litestar
pip install "maxapi[fastapi]"
pip install "maxapi[litestar]"
Минимальный бот
import asyncio
import os
from dotenv import load_dotenv
from maxapi import Bot, Dispatcher
from maxapi.types import Message
load_dotenv()
bot = Bot(token=os.getenv("MAX_TOKEN"))
dp = Dispatcher()
@dp.bot_started()
async def on_start(message: Message):
await message.answer("Привет! Я бот в MAX.")
@dp.message()
async def on_message(message: Message):
await message.answer(f"Ты написал: {message.text}")
async def main():
await dp.start_polling(bot)
asyncio.run(main())
Обрати внимание: паттерн Bot + Dispatcher и message.answer() — это намеренная отсылка к aiogram. Порог входа для Telegram-разработчиков минимален.
Обработка команд
from maxapi.filters import Command
@dp.message(Command("start"))
async def cmd_start(message: Message):
await message.answer("Бот запущен!")
@dp.message(Command("help"))
async def cmd_help(message: Message):
await message.answer("Список команд:\n/start — запустить\n/help — помощь")
Документация
Полная документация доступна на love-apples.github.io/maxapi — там есть примеры для всех типов событий.
aiomax — минималистичный асинхронный фреймворк
aiomax (github.com/dpnspn/aiomax) — самая лёгкая из трёх. Подходит если нужен простой бот без лишних абстракций.
Установка
pip install git+https://github.com/dpnspn/aiomax.git
Минимальный бот
import asyncio
import os
from dotenv import load_dotenv
import aiomax
load_dotenv()
bot = aiomax.Bot(os.getenv("MAX_TOKEN"))
@bot.on_message()
async def on_message(message):
await bot.send_message(
chat_id=message.chat_id,
text=f"Ты написал: {message.text}"
)
asyncio.run(bot.run())
Меньше абстракций, меньше магии — удобно для прототипирования.
Сравнение: что выбрать
| Критерий | max-botapi-python | maxapi | aiomax |
|---|---|---|---|
| Поддержка от VK | Верифицирована | Нет | Нет |
| Установка через pip | Нет (только GitHub) | Да | Нет (только GitHub) |
| Синтаксис | Свой | Похож на aiogram 3 | Минималистичный |
| Документация | README на GitHub | Отдельный сайт | README на GitHub |
| Webhook из коробки | Да (FastAPI) | Да (FastAPI, Litestar) | Не задокументирован |
| Активность | Стабильная | Активная (март 2026) | Умеренная |
Рекомендация:
- Если важна официальность и планируешь продакшн — бери max-botapi-python
- Если пришёл с Telegram/aiogram и хочешь быстро перенести логику — бери maxapi
- Если нужен быстрый прототип без лишнего кода — бери aiomax
Отличия от VK Bot API
Если ты уже делал ботов для ВКонтакте, вот ключевые отличия:
| VK | MAX |
|---|---|
| Токен сообщества | Токен бота (через @MasterBot) |
peer_id | chat_id |
| Long Poll / Callback API | Polling / Webhook |
| vkbottle, vk_api | max-botapi-python, maxapi, aiomax |
| Боты для физлиц | Только для юрлиц и ИП |
Что выбрать: VK или MAX
Если аудитория твоего бизнеса — физические лица в России, VK по-прежнему предпочтительнее: бота может сделать любой, порог входа ниже, аудитория огромная.
MAX — логичный следующий шаг, если бизнес уже оформлен как ИП или юрлицо и ты хочешь охватить аудиторию нового мессенджера.
Что читать дальше
- MAX vs VK: где реально запустить бота в 2026 — детальное сравнение платформ с точки зрения разработчика
- Бот ВК vs Telegram: сравнение и миграция — если рассматриваешь VK как альтернативу
- Telegram заблокирован: перенос бота в VK — практический гайд по миграции с кодом
- Как создать бота ВКонтакте с нуля — если начинаешь с VK, а не с MAX
Хочешь разобраться какая платформа подойдёт под конкретную задачу — опиши сценарий на странице «Заказать бота».
Реклама
Комментарии
Загрузка...