如何在Python discord bot中获取所提及用户的ID?

时间:2018-01-20 10:15:25

标签: python discord discord.py

所以我在python中编写了一个discord bot。但有一个问题。我知道如何提及发送邮件的用户。但是如何获取作者在邮件中提到的用户的ID?我无法得到答案。

2 个答案:

答案 0 :(得分:1)

您可以使用message.mentionshttps://docs.microsoft.com/en-us/sql/t-sql/statements/deny-transact-sql async

获取邮件中提及的用户

从那里,您既可以从Member对象获取ID,也可以从这些对象中获取格式化提示

message.mentions[0].id
message.mentions[0].mention

答案 1 :(得分:0)

discord.Message个对象的属性为mentions,返回消息内容中提到的所有用户的discord.Member个对象列表,discord.Member个对象有discord.User个作为父母的对象,以便您可以访问discord.Userauthor.id之类的author.name属性等。只需使用

进行迭代
for member in message.mentions:
    # do stuff with member

你应该真的使用discord.ext.commands(异步重写) 因为制作一个纯粹在on_message事件方法中工作的命令解析器是一个糟糕的非pythonic想法。

你可能想要什么

看起来你只想要的是能够访问消息的作者对象和消息中提到的用户作为参数,为此请参考我的答案here。要访问作者,您只需使用discord.Message

message.author对象即可