client.get_user() 在discord.py 中不起作用

问题描述 投票:0回答:2

我一直在尝试从 ID 获取用户对象,但它返回“NoneType”。这是我的代码:

user = client.get_user(INT)

Client 在我的代码中定义为:

client = discord.Client()

编辑: INT 将被替换为有效的 ID,这是我在实际代码中所做的

python-3.x discord bots discord.py
2个回答
3
投票

要获取成员对象,您的机器人需要成员意图,默认情况下禁用。要获得它,您必须做两件事:

  1. 转到开发人员门户,然后在“机器人”==>“特权网关意图”下将“服务器成员意图”切换为打开状态。
  2. 在您的客户端中启用它,例如:
intents = discord.Intents.default()
intents.members = True

client = discord.Client(intents=intents)

0
投票

FierySpectre 的答案是正确的。此外,您应该确保:

  1. 您的客户端已通过运行
    client.run("TOKEN")
  2. 登录
  3. 您的客户和目标用户有共同的渠道

因为

client.get_user(INT)
无法访问您的客户无法与之交互的不和谐用户。

© www.soinside.com 2019 - 2024. All rights reserved.