Как сделать простой Discord бот на Python

Как сделать простой Discord бот на Python
Как узнать марку и модель процессора на ноутбуке
3 января, 2020
Обзор Монитора AOC Q2790PQU/BT
Обзор Монитора AOC Q2790PQU/BT — стоит ли покупать?
4 января, 2020
Показать все
Как сделать простой Discord бот на Python
60 / 100 SEO оценка

Итак, вы используете Discord. Вы, наверное, видели тонны ботов вокруг. Эти боты обычно дополняют Discord, предлагая новые интересные функции, такие как музыка и возможности модерации. Конечно, мы не будем рассказывать, как реализовать все это в одном руководстве, но это будет хорошим началом для создания ботов Discord на Python.

Прежде всего, убедитесь, что вы используете Python 3.4.3 – 3.6.6, поскольку это единственные версии, которые в настоящее время поддерживает библиотека Discord. Чтобы проверить версию Python, выполните эту команду в командной строке следующим образом:

Python 3.4.3–3.6.6

Убедившись, что у вас правильная версия Python, вам нужно импортировать библиотеку discord.py, с помощью pip. Просто введите команду:

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

Теперь давайте приступим к созданию самого бота. Зайдите на https://discordapp.com/developers/applications/me , войдите в систему, и вы должны увидеть кнопку для создания нового приложения. Нажмите на эту кнопку.

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

После этого вы должны увидеть экран, где вы можете ввести имя вашего бота и установить изображение для вашего бота. Это только две особенности, о которых вам действительно нужно беспокоиться. Задайте имя и изображение для своего бота, как хотите, и все готово.

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

Хорошо, теперь вы должны быть на главной странице для вашего приложения бота. Прокрутите немного вниз, и вы увидите всплывающее окно с вопросом, хотите ли вы превратить ваше приложение в пользователя бота. Очевидно, что это предназначено для создания бота, поэтому вы должны так сделать (если вы этого не сделали, он не будет работать).

предназначено для создания бота

Хорошо, теперь вы должны увидеть функции, которые являются эксклюзивными для ботов. Нажмите «щелкнуть, чтобы раскрыть», чтобы открыть токен вашего бота. Не передавайте его никому (иначе другие люди смогут управлять вашим ботом!). Установите флажок общедоступного бота, если вы хотите, чтобы другие пользователи могли добавлять вашего бота на свой сервер, кроме вас.

токен бота

Написание нашего бота

Это все, что нам нужно сделать на странице разработчиков Discord. Теперь мы можем перейти к фактическому кодированию бота. Откройте новый файл .py в любой IDE, которую вы предпочитаете, и импортируйте библиотеку Discord.

Далее нам нужно установить наш клиент Discord. Клиент бота, который подключается к дискорду.

Теперь здесь начинается самое интересное. В библиотеке discord.py есть определенные события, на которые бот может ответить, в том числе когда сообщение отправлено и когда бот готов. Возьмите этот пример:

Теперь, когда бот готов к использованию после запуска, он напечатает «Бот готов!». Он запускает все, что есть в функции. Круто, верно? Мы можем использовать это и для других целей, таких как установка статуса игры для бота, например:

Это может показаться немного запутанным, но выслушайте меня. Мы должны поставить «await» перед ним, так как это сопрограмма, которая в основном позволяет выполнять многозадачность, чтобы бот мог одновременно реагировать на различные события. Понял? Итак, когда мы вызываем метод change_presence на клиенте Discord, он изменяет присутствие клиента, чтобы показать, что он играет в игру «Создание бота», поскольку мы создали объект Game с именем «Создание бота».

Затем мы можем приступить к созданию команд ботов. Мы проверяем, отправляется ли сообщение с помощью этой функции, которая принимает параметр «message», который будет равен отправленному сообщению. Мы не хотим, чтобы бот мог реагировать на себя при любых обстоятельствах, поэтому, если автор сообщения равен клиенту, мы прекращаем эту функцию.

Мы можем сделать несколько команд, на которые наш бот может ответить. Для начала мы сделаем очень простую вещь, поэтому, если мы скажем «Привет», бот скажет «И тебе привет» в ответ.

Сначала мы проверяем, равно ли содержание сообщения «Привет». Если это что-то другое, бот не ответит «И тебе привет». Затем метод send_message принимает два параметра: канал для отправки сообщения и сообщение для отправки (в виде строки). Бот ждет, пока не отправит это сообщение, затем ищет другой вопрос. Мы только что создали наш первый бот, используя discord.py, но как нам теперь подключить его к нашему серверу? Ну, есть еще один кусок кода, который мы забыли.

В конце кода вы ДОЛЖНЫ добавить функцию client.run (), которая запускает бота. Он принимает только один параметр — токен вашего бота, который вы должны были видеть ранее. Вставьте этот токен, и ваш бот должен запуститься при запуске программы!

Как установить нашего бота

Отлично, у нас есть весь код, но как нам добавить этого бота на сервер? Для этого нам нужно вернуться на страницу разработчиков Discord. Найдите маленькую кнопку с надписью «OAuth2 URL» и нажмите ее.

Как сделать простой Discord бот на Python

Если все, что делает бот — только отправляет сообщения, оставьте разрешения как есть. Однако, если вы хотите, чтобы у вашего бота были права доступа, отметьте нужные вам права. Не меняйте идентификатор клиента, так как он уже должен быть заполнен за вас. Все, что вам нужно сделать, это нажать кнопку копирования, и у вас есть ссылка, чтобы пригласить бота на ваш сервер!

Как сделать простой Discord бот на Python

Отлично, теперь у нас есть наш рабочий бот на нашем сервере! Проверьте его! Довольно круто, правда?

И, да! Бот также показывает статус игры, как мы и хотели!

статус игры

Нашли ошибку в тексте! Выдели фрагмент текста и нажмите Ctrl+Enter.

0
https://fyfor.com/kak-sdelat-prostoj-discord-v-python/

Автор публикации

не в сети 2 месяца

Андрей Ковальчук

6
Комментарии: 6Публикации: 122Регистрация: 09-12-2019

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

двадцать − 13 =

Авторизация
*
*

20 − 3 =

Регистрация
*
*
*
Пароль не введен
*

два × два =

Генерация пароля

11 + 17 =

Сообщить об опечатке

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