首页 > 解决方案 > Discord.py - 无法获取频道成员

问题描述

print(message.guild.member_count)  # 7
print(len(message.guild.members)) # 1
for member in message.guild.members:
    print(str(member))  # the bot itself

我正在尝试获取 Discord 频道的成员,但它只列出了机器人本身。它曾经可以工作,我根本没有更改代码,但突然没有了。我给了机器人管理员权限,不知道出了什么问题。

标签: pythondiscord.py

解决方案


您需要做两件事来利用Intents 数据类,并且您的代码将按预期工作。

  1. 更新开发人员门户以启用您的机器人的成员操作。

在此处输入图像描述

  1. 将以下代码添加到您的机器人:
intents = discord.Intents.default()
intents.members = True

bot = Bot(command_prefix=list(PREFIX), intents=intents)

请参阅我的成员去哪儿文档


推荐阅读