Команда help discord py

Обновлено: 06.07.2024

В этой статье мы создаем своего дискорд-бота на боксе с нуля.

Подготовка

Предварительные действия на боксе такие же, как и в нашей статье про Telegram:

Создание бота происходит в два этапа на сайте мессенджера. Сначала создаем приложение: «Разработчикам»(в футере) → «Applications», нажимаем кнопку «New Application» в правой верхней части страницы:


Выбираем имя приложения (выбирайте мудро, хоть его и можно изменить позже):


Готово. Здесь можно переименовать приложение, дать описание, загрузить аватарку:


Теперь добавим к нему бота. В меню слева вкладка «Bot» → «Add Bot» → «Yes, do it!».

Токен бота можно получить по кнопке Copy:


Если вдруг токен попал не только в ваши руки, его всегда можно заменить кнопкой Regenerate.

Добавление бота на сервер

Переходим на вкладку «OAuth2» и создаем для него свой URL для приглашения:


Чуть ниже выбираем права для бота. Если это бот для администрирования сервера, то можно, конечно, выбрать «Administrator», но нужно быть осторожными с этим.

Выдаем права, действительно нужные боту для администрирования сервера:


Теперь бота можно добавить на сервер. Копируем ссылку и открываем её в браузере. В диалоговом окне выбираем сервер:


Проверяем его привилегии:


Всё, бот на сервере:


Код бота

Активируем виртуальное окружение и ставим нужную библиотеку:

Добавляем директорию для бота, не выходя виртуального окружения:

Создаем конфиг бота:

Наполняем его содержимым

Дальше код бота. Создаем bot.py и сразу редактируем его vim’ом:

Первыми строками активируем виртуальное окружение и импортируем нужные модули:

Обозначаем боту, с какого символа начинаются его команды:

Добавляем в код функцию запуска:

Закрываем редактор и запускаем бота:


Код бота целиком:

Запуск бота

Создаем Linux-демона — он будет следить, что бот работает. Открываем файл (mlg, если нужно, меняем на своё имя сервиса):

Добавляем в него строки:

И запускаем демона:

Проверить, что всё работает, можно так:

Дополнение кода бота

Бот улучшается в два этапа:

  • добавляем код в файл бота
  • перезапускаем бота

Для примера добавим в бота какое-нибудь рандомное API. Открываем файл бота:

И добавляем в него пару библиотек и ещё одну функцию обработки команд:

Закрываем файл и перезапускаем демона, чтобы изменения вступили в силу:

Результатом будет рандомный мем:


Готово! Боты в Discord умеют многое, и мы можем и дальше расширять его возможности, изучая документацию.

Читайте также: