Discord.py从id/标记获取用户对象
因此,我试图从id或标记获取用户对象,但我使用的是用户帐户而不是机器人帐户,因此我无法使用get\u user\u info()Discord.py从id/标记获取用户对象,discord,discord.py,Discord,Discord.py,因此,我试图从id或标记获取用户对象,但我使用的是用户帐户而不是机器人帐户,因此我无法使用get\u user\u info() 有没有办法在用户帐户上执行此操作?如果您使用的是命令,则可以使用转换器: @bot.command(pass_context=True) async def mycommand(ctx, user: discord.User): # user is a User object 另一方面,您可以使用获取您可以看到的所有成员对象 from discord.uti
有没有办法在用户帐户上执行此操作?如果您使用的是
命令
,则可以使用转换器:
@bot.command(pass_context=True)
async def mycommand(ctx, user: discord.User):
# user is a User object
另一方面,您可以使用获取您可以看到的所有成员
对象
from discord.utils import get
user = get(bot.get_all_members(), id="1234")
if user:
# found the user
else:
# Not found the user
您可以使用:
ctx.message.server.get_member("id") or message.server.get_member("id")
这将返回一个discord.Member对象。如果您知道用户id,我建议改用。ctx.message.server.get_成员(id)或message.server.get_成员(id)
我无法对上一个答案发表评论(因为声誉),但请确保此处的id为int-type。对我来说,只有这个有效,因此如果其他答案都无效,您可以尝试以下方法:
user = await message.guild.query_members(user_ids=[userid]) # list of members with userid
user = user[0] # there should be only one so get the first item in the list
如果缓存中有,olny就会工作。否则请使用fetch\u user