如何仅使用用户ID获取userinfo?

时间:2020-05-13 09:30:03

标签: python discord.py

到目前为止,我只想使用他们的不一致ID获取用户的信息,我知道我可以改用 discord.Member ,但我想使用他们的ID来做,就像{{1} }

有什么办法吗?

这是我尝试过的方法,但是没有用

k!userinfo 326024842765664257

3 个答案:

答案 0 :(得分:1)

您可以使用Client.get_user()

@client.command()
async def userinfo(ctx, member_id: discord.Member.id):
    member = client.get_user(member_id)
    embedinfo = discord.Embed()
    embedinfo.set_author(name=f"User info: {member}")
    embedinfo.set_thumbnail(url=member.avatar_url)
    embedinfo.add_field(name="Guild Name:", value=member.display_name)
    embedinfo.add_field(name="Created on:", value=member.created_at.strftime("%a, %#d %B %Y, %I:%M %p UTC"))
    embedinfo.add_field(name="Joined on:", value=member.joined_at.strftime("%a, %#d %B %Y, %I:%M %p UTC"))
    embedinfo.set_footer(text=f"Request by: {ctx.author}", icon_url=ctx.author.avatar_url)
    await ctx.send(embed=embedinfo)

答案 1 :(得分:1)

您在discord.Member中遇到的想法可以与ID配合使用。根据您是否提供可行的属性(例如ID),该参数将返回command: ["/bin/sh","-c"] args: ["wget url && sleep infinity"] 对象。此外,这意味着您不必费心使用Client.get_user()或{{3} }。

此外,如果您使用此方法,如果您改变主意如何获取成员,则以后无需重新编码。如果需要,您还可以从Member对象获取ID。

代码:

discord.Member

答案 2 :(得分:1)

您只需使用.id

@client.command()
async def userinfo(ctx, member):
    memb_id = member.id
    embedinfo = discord.Embed()
    embedinfo.set_author(name=f"User info: {member.username}#{member.discriminator}")
    embedinfo.set_thumbnail(url=member.avatar_url)
    embedinfo.add_field(name="Guild Name:", value=member.display_name)
    embedinfo.add_field(name="Created on:", value=member.created_at.strftime("%a, %#d %B %Y, %I:%M %p UTC"))
    embedinfo.add_field(name="Joined on:", value=member.joined_at.strftime("%a, %#d %B %Y, %I:%M %p UTC"))
    embedinfo.set_footer(text=f"Request by: {ctx.author}", icon_url=ctx.author.avatar_url)
    await ctx.send(embed=embedinfo)