@attlantisse

Как исправить ошибку discord python bot?

пишу бота, но происходит ошибка:

TypeError: __init__() missing 1 required keyword-only argument: 'intents'

Код бота:
import discord
from discord.ext import commands

bot = commands.Bot(command_prefix="!")
client = discord.Client()

@client.event
async def on_ready():
    print("Бот запущен")
    
@client.command("hello")
async def hello(ctx):
    await ctx.send("")
	
client.run("токен бота")
  • Вопрос задан
  • 365 просмотров
Пригласить эксперта
Ответы на вопрос 3
Lord_of_Rings
@Lord_of_Rings
Python developer
client = discord.Client(intents=discord.Intents.default())
Ответ написан
AlexNest
@AlexNest
Работаю с Python/Django
Добавить соответствующий параметр, указанный в ошибке.
Как это сделать - описано в документации.
Ответ написан
Комментировать
shurshur
@shurshur
Тут сразу несколько ошибок.

Во-первых, класс discord.ext.commands.Bot унаследован от discord.Client - он расширяет возможность последнего функционалом команд. Использовать оба не нужно.

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

В-третьих, в классе discord.Client нет декоратора command - он есть только в commands.Bot.

Ну и наконец оба класса, очевидно, требуют передачи параметра intents, ведь их конструктор в итоге вызовет один и тот же код, который на эти intents ругнётся.

Правильно discord.Client вообще выкинуть - он тут не нужен.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы