Получение токена и Client ID для вашего бота
Для получения токена и ID бота небходимо создать свое приложение и в разделе General Information скопировать Client ID.
А в разделе настроек создать бота и скопировать его токен. Задача не сложная, думаю все с этим справятся.
Собственно пишем бота
Устанавливаем discord.py с помощью pip:
pip install discord
После успешной установки создаем файл bot.py, где будем писать бота.
Импортируем все необходимое:
import discord
from discord.ext import commands
Создаем переменную с вашим токеном, про который я писал выше:
TOKEN = 'Ваш токен'
Создаем тело бота:
bot = commands.Bot(command_prefix='!') #инициализируем бота с префиксом '!'
Для начала сделаем простенькую команду, аргумент которой бот будет просто пересылать:
@bot.command(pass_context=True) #разрешаем передавать агрументы
async def test(ctx, arg): #создаем асинхронную фунцию бота
await ctx.send(arg) #отправляем обратно аргумент
И в конце запускаем бота с вашим токеном:
bot.run(TOKEN)
В итоге должно получится вот такое:
import discord
from discord.ext import commands
TOKEN = 'Ваш токен'
bot = commands.Bot(command_prefix='!')
@bot.command(pass_context=True) # разрешаем передавать агрументы
async def test(ctx, arg): # создаем асинхронную фунцию бота
await ctx.send(arg) # отправляем обратно аргумент
bot.run(TOKEN)
Теперь необходимо добавить бота на сервер. Сделать это можно с помощью ссылки:
https://discordapp.com/oauth2/authorize?&client_id={Client ID}&scope=bot&permissions={Права, например 66395456}
Число необходимых прав можно получить в разделе настроек бота.
Теперь можно запускать бота:
python bot.py
После нескольких секунд, можно заметить его в сети:
И наконец-то попробовать отправить команду:
Заключение
Вот так можно легко запустить у себя на сервере бота. Как можно заметить библиотека делает практически все за тебя и остается только добавлять свой функционал с использованием python. В следующий раз я покажу как следить за событиями, подключатся к голосовым каналам (избегая проблем с linux и Windows), использовать роли и права участников и другое.
Надеюсь, статья была Вам полезна, удачи!
Специально для сайта ITWORLD.UZ. Новость взята с сайта Хабр