【问题标题】:Discord Bot - Guild Members Showing in count... but not in guild.membersDiscord Bot - 公会成员显示在计数中......但不在 guild.members
【发布时间】:2021-01-31 11:53:49
【问题描述】:

无法让我的不和谐机器人列出它添加到的唯一公会的所有成员..

async def on_ready(self):
    print("logged in as {0}".format(self.user))
    
    guilds = self.guilds        
    print("guilds: " + str(guilds))

    guild = self.get_guild(my_guild_id)
    print("guild members: " + str(guild.members))

有趣的是,当我打印出公会本身时,它显示的成员数为 5(这是正确的)。但是,当实例化 Guild 对象并访问 members 属性时,它只会将 bot 用户本身显示为成员。

guild members: [<Member id=12345678 name='testapp1_bot' discriminator='0683' bot=True nick=None guild=<Guild id=12345 name="ethandrower's server" shard_id=None chunked=False member_count=5>>]
guilds: [<Guild id=12345 name="ethandrower's server" shard_id=None chunked=False member_count=5>]

我猜这要么是我对“公会”架构的误解,要么是对机器人事物的权限。我已将机器人添加到具有完全管理员访问权限的服务器,所以我有点困惑为什么我可以看到正确的成员数量,但看不到 Member 对象本身?

任何帮助将不胜感激!

【问题讨论】:

    标签: discord discord.py


    【解决方案1】:

    如果您使用的是最新版本的 discord.py,即 1.5.0,则需要启用会员意图并将其应用于您的机器人。

    如何启用会员意图:https://discordpy.readthedocs.io/en/latest/intents.html#privileged-intents

    阅读有关 Intent 的更多信息:https://discordpy.readthedocs.io/en/latest/intents.html

    【讨论】:

      猜你喜欢
      • 2021-06-18
      • 2021-06-28
      • 1970-01-01
      • 2021-12-02
      • 2021-08-11
      • 2021-07-19
      • 2021-02-15
      • 1970-01-01
      • 2021-01-20
      相关资源
      最近更新 更多