我正在设置一个机器人,当有人输入命令后跟用户名或提及用户时,我需要获取用户对象。我不需要这两个都可以工作,只需一个就可以。
我看到您可以使用带id的client.get_user,但是我不希望输入命令的人员不得不处理获取ID的问题,而是希望他们仅使用用户名或提及用户。我已经有命令部分在工作,我只需要能够获得用户,并且想知道是否有诸如get_user之类的东西使用用户名或提及用户。
答案 0 :(得分:0)
嗯,有2种解决方案可供选择(其他可能会找到更多解决方案)
获取用户对象(用户无需发送其ID,bot即可发送)
user = discord.utils.get(ctx.guild.members, id=ctx.author.id)
然后发送一条消息:
await ctx.send(f"Hello {user.mention}")
只需使用ctx.author(比第一个解决方案容易得多)
await ctx.send(f"Hello {ctx.author.mention}!")