首页 > 解决方案 > 从用户名获取不和谐 id

问题描述

我正在制作一个拥有事物数据库的机器人,有时有人想查看不同的人拥有什么东西,这可以通过使用不和谐 id 来实现,但我只是不是每个人都会发送他们的不和谐 id。

我试图使用这样的东西:

def get_user_id(name_en, tag_en, guild_id):
  guild = client.get_guild(guild_id)  
  user = discord.utils.get(guild.members, name= "Atom" , discriminator= "#1803")
  print(user)

但这只会输出一条空消息。

那么有没有办法从用户名中获取不和谐的 ID?

这也可以用不同的编程语言制作不和谐机器人吗?(如果在discord.py中不可能)

谢谢

标签: pythondiscord.py

解决方案


您可以使用Guild.get_member_named()

该名称可以有一个可选的鉴别器参数,例如“Jake#0001”或“Jake”都将进行查找。然而,前者会给出更精确的结果。请注意,鉴别器必须具有全部 4 位数字才能正常工作。

def get_user_id(name_en, tag_en, guild_id):
  guild = client.get_guild(guild_id)  
  user = guild.get_member_named(name_en)
  print(user)

推荐阅读