бот не выдаёт роль участнику (discord.py)

выходит такая ошибка:

author = bot.get_member(637...) AttributeError: 'Bot' object has no attribute 'get_member'

вот команда:

@bot.command()
async def close(ctx):
    author = bot.get_member(637...)
    guild = bot.get_guild(824...)
    role = guild.get_role(869...)

    await author.add_roles(role)
    await ctx.send(
        embed=discord.Embed(
            description=f"**нехороший человек закрылся**",
            color=discord.Color.red(),
        )
    )

Ответы (1 шт):

Автор решения: denisnumb

Откройте список методов объекта discord.ext.commands.Bot и увидите, что никакого метода get_member() у вашего бота нет.

Об этом же говорится в тексте ошибки

AttributeError: 'Bot' object has no attribute 'get_member'

Чтобы получить участника сервера, воспользуйтесь функцией discord.utils.get

member = discord.utils.get(guild.members, id=637...)

Или через объект сервера:

member = guild.get_member(637...)

Чтобы каждый раз не получать участника через id, можно передать его в качестве аргумента команды. Подробнее здесь.


А чтобы не сталкиваться подобными проблемами в будущем, рекомендую почитать краткое руководство по использованию документации.

→ Ссылка