【问题标题】:Obtaining username from user id | discord.py从用户 id 获取用户名 |不和谐.py
【发布时间】:2019-05-09 09:50:53
【问题描述】:

好吧,我一直在使用不和谐的数据库来获取队列中用户 id 的主要列表,尽管我在从用户 id 获取用户时遇到问题,因为它没有返回

举例


members = list(privateduos[matchid])
user = discord.User(id=int(members[0]))
await client.say("Say `test` " + str(user))
await client.wait_for_message(content="test", author=user)

这是输出

client.wait_for_message似乎也没有检测到代码中的消息作者,有什么解决办法吗?

【问题讨论】:

  • 您使用的是什么版本的 discord.py?在异步分支中,所有 id 都是字符串。您应该使用Client.get_user_info 来获取用户对象,而不是手动创建User
  • 我一直在使用 0.16.12(如果我没记错的话)

标签: python discord discord.py


【解决方案1】:

使用await client.get_user_info(members[0])

从那里开始,(假设您已将返回值分配给user)您可以通过user.name 获取用户名。
(或获取有关user 的其他信息,如here 所述。)

【讨论】:

  • 用过这个...user = await client.fetch_user(id)
【解决方案2】:

方法 client.get_user_info 自上次迁移以来已弃用,您应该改用 Client.fetch_user()

详情见此链接:https://discordpy.readthedocs.io/en/latest/migrating.html

【讨论】:

  • 我现在很了解重写文档,这个问题已经有 2 年多了,我不再需要它的答案。将此标记为该问题未来观众的最佳解决方案,无论如何谢谢
猜你喜欢
  • 1970-01-01
  • 2020-10-09
  • 2021-08-04
  • 2021-04-05
  • 2019-02-04
  • 2019-05-31
  • 2019-04-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多