从消息中获取用户对象
Posted
技术标签:
【中文标题】从消息中获取用户对象【英文标题】:Getting a user object from message 【发布时间】:2021-01-27 06:05:38 【问题描述】:我正在尝试从消息(特别是命令)中获取用户对象 - 示例:
$info Account#0001
有时 Discord 不会注册成员(可能是为了在拥有大量成员的服务器中节省内存),因此您无法 @ 他们并在他们离开频道时获取用户对象。我正在尝试让机器人搜索那个成员#tag,获取他们的 ID,然后它会执行命令的任何操作。
我试过了
message.mentions[0].id
但是它只在用户被 ping 时才有效,有什么想法吗?
【问题讨论】:
【参考方案1】:在命令中,你可以为用户添加一个参数:
@bot.command()
async def foo(ctx, user: discord.User):
print(user.id)
这将允许使用提及或用户名#tag。
【讨论】:
以上是关于从消息中获取用户对象的主要内容,如果未能解决你的问题,请参考以下文章