Как создать бота ВКонтакте с нуля на Python: пошаговый гайд 2026
Как сделать бота в ВК самому: создаём сообщество, получаем токен, пишем код на Python с vkbottle. Пошаговая инструкция — от нуля до первого ответа за 30 минут.
Содержание статьи
Меня зовут Павел Гордеев, и сегодня создаём бота для ВКонтакте с нуля — на Python, с рабочим кодом и без воды.
Если ты искал как создать бота в ВК или как сделать бота в ВКонтакте — ты попал по адресу. Здесь весь путь: от создания сообщества до первого ответа бота. Время — 30 минут.
Сразу честно: VK сложнее Telegram. В Telegram ты получаешь один токен у BotFather и через пять минут бот работает. В VK первые вопросы появляются раньше чем напишешь первую строку кода — где взять токен, какие разрешения поставить, и главное: в чём вообще разница между Callback API и Long Poll API.
Объясню просто. Боты бывают двух типов:
Одни реагируют — клиент написал, бот ответил. Для этого используется Long Poll или Callback API сообщества.
Другие пишут сами — рассылки, уведомления, сообщения первыми. Для этого нужен уже другой механизм — User Long Poll с токеном пользователя.
Эта путаница и есть главное отличие от Telegram. Разберём по шагам — от создания сообщества до первого рабочего ответа за 30 минут.
Что ты создашь
К концу статьи у тебя будет бот, который:
- Отвечает на приветствие («привет», «здравствуй»)
- Отвечает на вопрос «что ты умеешь?»
- Обрабатывает любое непонятное сообщение
- Работает 24/7 на твоём сервере
Что понадобится
- Python 3.9 или новее — скачать на python.org
- VS Code или PyCharm — для удобной работы с кодом
- Базовые знания Python — переменные, функции, циклы. Знакомство с async/await — плюс, но не обязательно
- Сообщество ВКонтакте — создадим на следующем шаге
- 30 минут времени
Шаг 1: Создаём сообщество ВКонтакте
Если у тебя уже есть сообщество — пропусти этот шаг.
- Заходи на vk.com → нажимай кнопку «Создать сообщество»
- Пиши название (до 48 символов)
- Выбирай тематику из списка
- Переключатель «Бизнес-инструменты» — оставь выключенным, для бота он не нужен
- Нажимай «Создать сообщество»

Боты работают только в сообществах, не на личных страницах.
Шаг 2: Получаем токен доступа
Токен — это ключ, с помощью которого бот будет управлять сообществом.
- Заходи в Управление (кнопка под обложкой сообщества)
- Переходи в Дополнительно → Работа с API

- Нажимай «Создать ключ»
- Отмечай разрешения:
- ✅ Разрешить приложению доступ к управлению сообществом
- ✅ Разрешить приложению доступ к сообщениям сообщества

- Нажимай «Создать» и копируй токен — он выглядит примерно так:
vk1.a.XXXXX...
Важно: Никому не показывай этот токен. Храни его в переменных окружения, не в коде.
Шаг 3: Настраиваем бота в сообществе
Это самый важный шаг — без него бот не будет получать сообщения.
- В Управлении сообщества переходи в Настройки для бота
- Найди раздел «Возможности ботов» и включи его
- Нажми «Добавить кнопку Начать» — она появится у новых пользователей в диалоге
Включаем Long Poll
Long Poll — механизм, через который бот получает события в реальном времени. Без него бот упадёт с ошибкой сразу после запуска. Включается там же — в разделе «Работа с API», но на отдельной вкладке:
- Управление → Дополнительно → Работа с API
- Переходи на вкладку «Long Poll API» (рядом с «Ключи доступа» и «Callback API»)
- Внутри открой подвкладку «Настройки»
- Переключи Long Poll API в положение «Включено»

- Переходи на подвкладку «Типы событий» — она рядом с «Настройки»
- Включи «Сообщение новое» (message_new) — без этого бот будет запущен, но молчать в ответ на сообщения

Если после включения бот всё равно падает с
longpoll for this group is not enabled— попробуй включить программно. Создай файлenable_longpoll.pyи запусти один раз:import asyncio from vkbottle import API TOKEN = "вставь_свой_токен" GROUP_ID = 123456 # число из адреса vk.com/club123456 async def main(): api = API(TOKEN) await api.request("groups.setLongPollSettings", { "group_id": GROUP_ID, "enabled": 1, "api_version": "5.199", "message_new": 1, "message_reply": 1, }) print("Long Poll включён!") asyncio.run(main())После успешного запуска файл можно удалить.
Шаг 4: Создаём проект и устанавливаем библиотеку
Открой терминал (в VS Code — `Ctrl+“, в PyCharm — вкладка Terminal) и создай папку проекта:
mkdir vkbot
cd vkbot
Создай виртуальное окружение — это изолированная среда для зависимостей проекта:
python -m venv .venv
Активируй его:
# Windows (PowerShell):
.venv\Scripts\activate
# Linux / macOS:
source .venv/bin/activate
После активации в начале строки появится (.venv) — это значит, что окружение активно.
Теперь устанавливай vkbottle — лучшую Python-библиотеку для VK-ботов. Современная, асинхронная, хорошо документированная:
pip install vkbottle
Проверь установку:
pip show vkbottle
Должен увидеть информацию о пакете: версию, автора, путь установки.
Шаг 5: Пишем первого бота
Создай файл bot.py в папке проекта:
import asyncio
from vkbottle.bot import Bot, Message
# Замени на свой токен сообщества
TOKEN = "YOUR_TOKEN_HERE"
bot = Bot(token=TOKEN)
@bot.on.message(text=["привет", "здравствуй", "хай", "hi", "hello"])
async def greet_handler(message: Message):
await message.answer("Привет! Я бот этого сообщества 🤖")
@bot.on.message(text=["что ты умеешь", "помощь", "/help"])
async def help_handler(message: Message):
await message.answer(
"Я умею:\n"
"• Отвечать на приветствия\n"
"• Рассказывать о себе\n"
"\nНапиши «привет» чтобы начать!"
)
@bot.on.message()
async def fallback_handler(message: Message):
await message.answer("Не понял тебя 🤔 Напиши «помощь» чтобы узнать что я умею.")
if __name__ == "__main__":
bot.run_forever()
Шаг 6: Запускаем бота
python bot.py
Если всё настроено правильно — бот начнёт работать. Открой сообщения своего сообщества ВКонтакте, нажми «Начать» и напиши «привет» — бот ответит!
Если видишь ошибку longpoll for this group is not enabled — вернись на Шаг 3 и убедись, что «Возможности ботов» включены и настройки сохранены.
Как хранить токен безопасно
Никогда не пиши токен прямо в код. Используй файл .env:
pip install python-dotenv
Создай файл .env в папке проекта:
VK_TOKEN=вставь_сюда_свой_токен
И добавь .env в .gitignore чтобы случайно не залить токен на GitHub:
.env
.venv
В коде читай токен так:
from dotenv import load_dotenv
import os
load_dotenv()
TOKEN = os.environ["VK_TOKEN"]
Для продакшна — отдельная статья с продвинутыми способами хранения: Как хранить токен VK API: .env, systemd, защита от утечек.
FAQ
Как создать бота в ВК с нуля — с чего начать?
Начни с создания сообщества ВКонтакте и получения токена доступа (Шаги 1–2 этой статьи). Потом установи Python и библиотеку vkbottle командой pip install vkbottle. Весь путь от нуля до первого ответа бота — около 30 минут.
Как сделать бота в ВК самому, без программиста?
Если программировать не хочется — есть конструкторы: Senler, BotHelp, Salebot. Они не требуют кода, но ограничены по возможностям. Сравнение — в статье ТОП-7 конструкторов ботов для ВК. Если нужны интеграции, сложные сценарии и полный контроль — Python или разработка под ключ.
Можно ли создать бота в ВКонтакте бесплатно?
Да. VK API и библиотека vkbottle — бесплатны. Запуск на своём компьютере — тоже. Платно только по желанию: VPS-сервер для работы 24/7 обходится от 150–200 руб/мес на минимальном тарифе.
Чат-бот на Python для ВК — нужно ли знать async/await?
Для простого бота — нет. vkbottle скрывает асинхронность внутри: достаточно базового Python. async def и await в обработчиках можно просто скопировать по шаблону из этой статьи — бот будет работать без глубокого понимания деталей.
Как создать своего бота в ВК и не потерять токен?
Никогда не пиши токен прямо в код. Храни его в файле .env и читай через python-dotenv. Добавь .env в .gitignore — тогда токен не попадёт на GitHub случайно. Подробнее — в разделе «Как хранить токен безопасно» этой статьи.
Бот в ВК — как сделать, чтобы он работал всегда?
Запусти на VPS-сервере с автозапуском через systemd. Минимальный сервер для бота стоит 150–200 руб/мес. Подробный гайд: Деплой VK-бота на сервер с systemd и nginx.
Как создать вк бота с кнопками?
Клавиатуры в vkbottle добавляются через объект Keyboard. Создаёшь клавиатуру, добавляешь кнопки с payload и передаёшь в message.answer(). Полный разбор методов и ограничений — в статье VK Bot API: messages.send, клавиатуры, лимиты.
Можно ли запускать бота на Windows?
Да. Для старта Windows подходит отлично. Для работы 24/7 в проде удобнее Linux/VPS — Windows-машину нельзя держать включённой постоянно.
Почему бот отвечает мне, но не отвечает другим?
Частая причина — выключенное событие message_new или ограничения в настройках сообщества. Проверь шаг с Long Poll в этой статье — особенно раздел «Типы событий».
Какой API используется у бота ВК?
Для ботов сообщества используется обычный VK API (методы messages.*) плюс Long Poll API для входящих событий. Сравнение Long Poll и Callback API — в отдельной статье Long Poll vs Callback API.
Что лучше выбрать новичку: vk_api или vkbottle?
Для нового проекта — сразу vkbottle: асинхронная, активно развивается, удобнее для сложных сценариев. vk_api старше, больше примеров в интернете, чуть легче для старта. Подробное сравнение — vkbottle или vk_api: что выбрать.
Как запустить бота ВК на Python без постоянных падений?
Минимум для стабильности: токен в .env, обработчики в try/except, включить логирование и настроить автозапуск через systemd на сервере. Статья Деплой VK-бота на сервер закрывает все эти шаги.
Что дальше
Ты создал базового бота — это фундамент. Вот куда двигаться дальше:
- Бот-автоответчик — ответы по ключевым словам и расписанию
- Long Poll vs Callback API для бота ВК — как выбрать архитектуру перед прод-запуском
- VK Bot API: сообщения, клавиатуры, лимиты — практические ограничения и типовые ошибки
- vkbottle или vk_api: что выбрать — выбор Python-библиотеки под задачу
- Бот для интернет-магазина ВК — пример коммерческого сценария с заявками
- ТОП-7 конструкторов ботов для ВК — сравнение 2026 — если хочешь стартовать без кода
- Бот ВК vs Telegram: сравнение возможностей — если переходишь с Telegram
- Telegram заблокирован: перенос бота в VK — пошаговый гайд по миграции с кодом
Нужен бот под задачу бизнеса?
Если нужна индивидуальная логика, интеграции и воронка под ваш процесс — оставь заявку на разработку бота под ключ.
Если нужен быстрый старт без долгой разработки — выбери решение в каталоге готовых ботов.
Комментарии
Загрузка...