Задать вопрос
@Edipp

Как сделать так, что бы бот на disnake увидел мемберов?

В общем сделал бота на скорую руку, посмотрел, а он не видит мемберов. То есть видит сколько их, но не может найти их через get_member_named и узнать их статус(в сети и тд), но при этом сам себя он видит, может скинуть аватарку, а вот других нет, возвращает NoneType и все.
main.py
import os
from dotenv import load_dotenv
from disnake.ext import commands
load_dotenv()
bot = commands.InteractionBot(test_guilds=[112108412110870940])

bot.load_extensions('cogs')
bot.run(os.getenv("TOKEN"))

embed.py из cogs
import datetime
import disnake
from disnake.ext import commands

class Embed(commands.Cog):
    def __init__(self, bot: commands.Bot):
        self.bot = bot

    @commands.slash_command()
    async def avatar(self, ctx, name):
        self.name = name
        embed = disnake.Embed(
            title=f"{self.name}'s Avatar",
            color=disnake.Colour.blurple(),
            )
        try:
            embed.set_image(url=ctx.guild.get_member_named(self.name).avatar)
        except Exception:
            embed.add_field(name='Failed', value="Can't find user")
        await ctx.send(embed=embed)

def setup(bot: commands.Bot):
    bot.add_cog(Embed(bot))
  • Вопрос задан
  • 103 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
shurshur
@shurshur
Сисадмин, просто сисадмин...
Необходимо добавить member intents. А также включить privileged intents в настройках бота в developer portal. Документация. Вообще, примеров на эту тему в интернете море.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы