为 discord.py bot 启用意图

时间:2021-01-28 10:24:16

标签: discord discord.py

我正在制作一个不和谐机器人,每次它加入新服务器时,机器人都会向我发送服务器信息和邀请。但是,当我对此进行测试时,它总是显示一个成员本身。我在不和谐开发者门户中启用了状态和成员意图,但它仍然无法正常工作。

然后我将一些代码更改为 Guild.fetch_members(),我收到了错误:

discord.ext.commands.errors.CommandInvokeError:
Command raised an exception:
ClientException:
Intents.members must be enabled to use this.

正如我之前所说,在不和谐开发者网站上启用了成员意图,并且我之前使用过此代码而没有出现此问题。

当我之前使用此代码时,它使用的是 1.5.x(我记不清了),现在使用的是 1.6.0,所以新更新中的某些内容可能会阻止它工作,但这对我来说是不寻常的,那么我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

1.5.0 中引入了意图,所以我认为它们以前没有用过,但可以回答您的问题

intents = discord.Intents.default()
intents.members = True

bot = commands.Bot(..., intents=intents)

还要记住在 developer portal

中启用特权成员意图

How to enable privigeled intents

答案 1 :(得分:0)

有人将此作为答案发布但删除了它,它确实有效。

intents = discord.Intents.default()
intents.members = True

client = commands.Bot(command_prefix=prefix, intents=intents)