如何检查消息是否包含 discord.py 中的提及?

时间:2021-04-12 08:17:17

标签: python discord discord.py

我们的机器人中有一个 globalchat 功能,我们不希望人们通过它提及其他人或每个人,所以我们禁用了消息中的“@”符号,但现在如果你输入“@Hello World!”,它将返回,您的消息将不会发送。

                if "@" in message.content:
                    return

我如何检查该消息中是否有提及?消息.提及?

1 个答案:

答案 0 :(得分:3)

Discord 提及并没有像这样处理,原始用户提及看起来像这样 <@{id_here}>,而昵称提及看起来像这样 <@!{id_here}>

您可以创建一个简单的正则表达式,但 Message 对象已经具有 mentions 属性,该属性返回 discord.User/discord.Member 实例的列表:

if message.mentions: # If the list is not empty
    return

参考: