嵌入标题或描述中的Discord.py检测消息

时间:2020-11-09 21:06:58

标签: python discord.py discord.py-rewrite

我目前正在尝试制作“反自助机器人”机器人。我想为Discord社区做点好事。因此,我尝试创建一个on_message事件,该事件可以检测Embed是否包含'selfbot',这将导致该消息被删除并被禁止。

我已经开始制作我的机器人了。但是,我不确定如何读取Embed的内容。

if 'selfbot' in message.content:
    # do some stuff here

因此,基本上,我目前唯一的问题是阅读嵌入的标题或描述内容。

1 个答案:

答案 0 :(得分:0)

下面将检查消息中嵌入内容的标题,描述,页脚和字段中是否包含某些文本

from discord import Embed

def message_contains(message, text):
    return text in message.content or any(embed_contains(embed, text) for embed in message.embeds)

def embed_contains(embed, text):
    return (text in embed.title 
         or text in embed.description
         or (embed.footer is not Embed.Empty and text in embed.footer.text) 
         or (embed.fields is not Embed.Empty and any(text in field.name or text in field.value for field in embed.fields))
         )