Найти в Дзене

Бот на Python для VK 2021

Итак, сегодня я расскажу о том, как написать бота на Python 3 в 2021 году...

Итак, сегодня я расскажу о том, как написать бота на Python 3 в 2021 году...

Содержание:
Подготовка - Шаг 1
Основной код - Шаг 5
Финальная версия - После Шага 9

Шаг 1

Первым делом надо установить питон и среду в которой вам будет удобно работать с ним... У языка Python есть основной сайт, где вы можете скачать версию, которая вам понравилась (я буду разбирать версии 3.0+). Далее установим среду разработки, это место, где вы будете писать код, лично я рекомендую (Sublime Text 3).

Также стоит создать группу в социальной сети ВК, а далее следуем инструкции

  1. Переходим в "Управление"
  2. Работа с API и создаем токен (при создании - отметить все галочки)
  3. Далее переходим в "Сообщения"
  4. Включаем сообщения сообщества
  5. Переходим в "Настройки для бота"
  6. Включаем возможности ботов

Примечания:

  • Во время установки Python 3, внизу будет кнопка в виде: "Add to PATH..." - ее следует нажать, иначе ваши функции будут урезаны
  • В приложенных далее фото я уже настроил Sublime Text 3 на свой вкус

Шаг 2

Запускаем cmd от имени администратора (при запуске в обычном режиме у меня не получалось) и вписываем следующее:

pip install vk_api

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

Таким образом мы устанавливаем библиотеку для работы с сервисом ВКонтакте

Шаг 3

Создаем текстовый документ и переименуем его в main.py, так будет удобнее

Примечание:

  • .py - разрешение файла, думаю есть много гайдов, как включить показ разрешений папок, файлов и так далее

Шаг 4

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

Шаг 5

  • Импортируем установленные ранее библиотеки:
import vk_api
from vk_api.longpoll import VkLongPoll, VkEventType

Теперь мы можем работать с ними

Шаг 6

  • Авторизируемся в боте:
vk_session = vk_api.VkApi(token = "СЮДА ВСТАВЬТЕ СОЗДАННЫЙ РАНЕЕ ТОКЕН")
session_api = vk_session.get_api()
longpoll = VkLongPoll(vk_session)

Итак, теперь наш бот при запуске создает связь с группой

Шаг 7

  • Добавим функцию, которая будет принимать id пользователя и отправлять ему сообщения:
def send_nudes(id, text):
vk_session.method('messages.send', {'user_id' : id, 'message' : text, 'random_id' : 0})

Шаг 8

  • Наверстаем условия для работы бота:
for event in longpoll.listen():
-Пока событие можно просмотреть
if event.type == VkEventType.MESSAGE_NEW:
-Если событие - это новое сообщение
if event.to_me:
-Если это сообщение для бота
msg = event.text.lower()
-Делает текст, который присылается маленьким
id = event.user_id
-Создает переменную id = id пользователя

Шаг 9

  • Пример кода:
if msg == 'начать' or msg == 'привет':
-Если нам пришло сообщение "начать" или "привет"
-После msg ==, в '' должно быть написано сообщение, которое к нам пришло с МАЛЕНЬКОЙ БУКВЫ
send_nudes(id, '♥Привет!!!')
-Отправить сообщение "♥Привет!!!"
send_nudes(id, '♥Как тебя зовут?')
-Отправить сообщение "♥Как тебя зовут?"

Вот и все по сути...

  • Финальная версия кода:
import vk_api
from vk_api.longpoll import VkLongPoll, VkEventType
vk_session = vk_api.VkApi(token = "ВАШ ТОКЕН")
session_api = vk_session.get_api()
longpoll = VkLongPoll(vk_session)
def send_nudes(id, text):
vk_session.method('messages.send', {'user_id' : id, 'message' : text, 'random_id' : 0})
for event in longpoll.listen():
if event.type == VkEventType.MESSAGE_NEW:
if event.to_me:
msg = event.text.lower()
id = event.user_id
if msg == 'начать' or msg == 'привет':
send_nudes(id, 'Привет!!!')
send_nudes(id, '♥Как тебя зовут?')

Надеюсь, что моя статья помогла вам,
С наилучшими пожеланиями,
your.reviewer