【发布时间】:2021-03-22 14:40:25
【问题描述】:
我尝试在课堂上使用guild.fetch_members(limit=None):
在较早的版本中它可以工作,但不会再...
就像在doc 的介绍中描述的那样,我为我的机器人创建了一个类,现在我面临 Intents.members 未启用的问题。
Intents = discord.Intents.default()
Intents.members = True
Intents.presences = False
class OverlordBot(discord.Client):
async def on_ready(self):
print(platform.system())
print(Intents.members)
# loop for every guild
for guild in self.guilds:
self.__amountGuilds += 1
# loop for every channel in every guild
for channels in guild.channels:
self.__amountChannels += 1
# loop for every user in every server
members = await guild.fetch_members(limit=None).flatten()
for member in members:
self.__memberList.append(member.id)
这里是错误堆栈:
Linux
True
Ignoring exception in on_ready
Traceback (most recent call last):
File "/home/anon/.local/lib/python3.9/site-packages/discord/client.py", line 343, in _run_event
await coro(*args, **kwargs)
File "/home/anon/Documents/git/overlordbot/Overlord_vrs_4/main/Main.py", line 133, in on_ready
members = await guild.fetch_members(limit=None).flatten()
File "/home/anon/.local/lib/python3.9/site-packages/discord/guild.py", line 1313, in fetch_members
raise ClientException('Intents.members must be enabled to use this.')
discord.errors.ClientException: Intents.members must be enabled to use this.
有趣的是,这个错误只发生在 Linux 系统上。它在我的 Windows 机器上运行良好,因为我想在我的 RaspberryPi 上运行这个机器人,所以我必须解决这个问题。
感谢您的帮助...
【问题讨论】:
-
您是否在开发者门户中启用了它们?另外-您是否将意图传递给机器人?您可以添加要实例化机器人的部分吗?
-
是的,它适用于我的 Windows 计算机,但不适用于我的 ArchLinux 或 RaspberryPi
-
这些系统的错误是什么?
标签: discord.py