• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Soft Python - Создаем Discord бот

Muxtar

Green Team
02.06.2021
132
65
BIT
0

Начало

В данном статье, я покажу как можно создать Discord бота. Discord это мессенджер для голосового, видео и текстового общения для любых сообществ [ ]. А теперь, давайте создадим простого бота, и сделаем ему команду.


Создание бота

Примечание: Чтобы у вас бот работал, у вас должен быть аккаунт дискорд и созданный вами сервер!
Создадим простой бот на сайте Discord Developer Portal — API Docs for Bots and Developers. Потом верхнем правом углу нажимаем на кнопку New Application:
Screenshot 2021-06-09 at 19-03-59 Discord Developer Portal — API Docs for Bots and Developers.png


Дальше, Discord попросит вас название вашего бота, пример, назовём его MyBot.

Настройка

Теперь, мы должны, настроить бота, можем изменить аватарку бота, дать название и т.д
Ну я конечно лишне менять не буду, просто скопирую токен, который мы сможем подключаться к боту, для этого зайдите на BOT и внизу есть ваш токен:
Screenshot 2021-06-09 at 19-11-49 Discord Developer Portal — API Docs for Bots and Developers.png


Нажимаем на кнопку Copy, потом создайте простой документ txt, и закиньте его, я назову его token.txt, через пайтон файл, мы позже будем подключаться к нему:

Снимок экрана от 2021-06-09 19-15-26.png

Добавляем бота:

Все бота мы создали, теперь мы должны кинуть на наш сервак, как это сделать? Для этого вы должны зайти на сайт: [ Discord - A New Way to Chat with Friends & Communities ] и изменить YOUR_ID на Application ID:

Снимок экрана от 2021-06-09 19-18-35.png
'
Заходим опять в Developer discord нажимаем на кнопку OAuth2 копирум Client ID и ставляете место YOUR_ID на CLIENT ID.

Вот и всё! После чего, Discord попросит на какой сервер, добавить вашего бота:

Screenshot 2021-06-09 at 19-30-26 Discord - A New Way to Chat with Friends Communities.png


Допустим он у меня будет называть My Server.

Пишем код!

С созданием бота мы разобрались! Теперь, напишем код на пайтоне, и сделаем команду для бота, которые будет приветствовать. Ну для этого вы должны установить библиотеку discord:
Открываем терминал и вводим вот такую команду:
Код:
Линукс и Мак:
python3 -m pip install -U discord.py

# Виндовс
py -3 -m pip install -U discord.py

Тэкс-с, давайте напишем кода, создаем простой .py файл и пишем вот такой код:

Python:
import discord
from discord.ext import commands # Подюкчаем необходимые библиотеки

client = commands.Bot( command_prefix = '.' ) # Префикс команды

@client.event

async def on_ready():
    print (" Bot успешно подключился! ") # Если пайтон смог подключиться то выведится это сообшение


@client.command(pass_context=True)

async def hello (ctx):
    await ctx.send('Здарова') # После ввода команды .hello бот выведет вам это сообшение

# Подключение
token = open( '/media/silvio/HDD/Python/Discord_Bot/token.txt', 'r').readline() # Ваш токен

client.run( token )

Код получился не такой уж и большим. Давайте запустим этот код, сначало функция on_ready() должен выполниться первым:

Снимок экрана от 2021-06-09 19-40-38.png

Отлично, наш бот подключился, теперь посмотреть на ваш сервер, ваш бот должен быть в сети:

Снимок экрана от 2021-06-09 19-41-03.png

Наш бот в сети! Так давайте теперь проверим нашу команду .hello, и посмотрим выведет ли нам сообшение:

Снимок экрана от 2021-06-09 19-43-52(2).png


Итоги

Тоесть мы научились создавать бот, подключаться и создать новую команду. Всем спасибо за внимание, надеюсь данная статься была полезна для вас [БУДУ БЛАГОДАРЕН ЕСЛИ НАЙДЕТЕ КАКИЕ НИБУДЬ ОШИБКИ].


 
  • Нравится
Реакции: Vonabruch

nks1ck

Green Team
02.11.2020
223
106
BIT
0
Ставлю плюс за хоть что-то, но такой код же можно достать в доке. Из за этого статья не имеет никакой ценности.
 
  • Нравится
Реакции: Vonabruch

DragonSov

Codeby Team
Gold Team
03.12.2019
107
141
BIT
261
В новых версиях Discord.py в аргументах декоратора не нужно указывать pass_context. Если планируешь делать новые статьи по этому поводу, то удели внимание дополнениям(cogs) для удобного работы с кодом.
 
  • Нравится
Реакции: Dzen
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!