(discord.py) 有没有办法让 on_message 事件查看嵌入式消息而不是普通消息?

(discord.py) Is there any way for the on_message event to look into an embedded rather than a normal message?((discord.py) 有没有办法让 on_message 事件查看嵌入式消息而不是普通消息?)
本文介绍了(discord.py) 有没有办法让 on_message 事件查看嵌入式消息而不是普通消息?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

限时送ChatGPT账号..

我正在尝试制作一个 discord.py 机器人,它在带有 on_message 事件的每条消息中查找给定的关键字.虽然这适用于普通文本,但我无法让它与我需要的嵌入式消息一起使用.有没有办法做到这一点?

I'm trying to make a discord.py bot that looks for given keywords in every message with the on_message event. While this works great with normal text, I can't get it to work with an embedded message which is what I need. Is there any way to do this?

推荐答案

message.embeds 将为您提供 Embed 对象的列表.您可以尝试类似

message.embeds will get you a list of Embed objects. You might try something like

def check_all_message(check_for, message):
    if check_for in message.content:
        return True
    for e in message.embeds:
        if any(item and check_for in item for item in (e.title, e.footer, e.description)):
            return True
        if e.fields:
            for field in e.fields:
                if check_for in field.name or check_for in field.value:
                    return True
    return False

@bot.event
async def on_message(message):
    if message.author == bot.user:
        return
    if check_all_message("apple", message):
        await bot.send_message(message.channel, 'You said "apple"!')

这篇关于(discord.py) 有没有办法让 on_message 事件查看嵌入式消息而不是普通消息?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

How do I make a list of all members in a discord server using discord.py?(如何使用 discord.py 列出不和谐服务器中的所有成员?)
how to change discord.py bot activity(如何更改 discord.py 机器人活动)
Issues with getting VoiceChannel.members and Guild.members to return a full list(让 VoiceChannel.members 和 Guild.members 返回完整列表的问题)
Add button components to a message (discord.py)(将按钮组件添加到消息(discord.py))
on_message() and @bot.command issue(on_message() 和@bot.command 问题)
How to edit a message in discord.py(如何在 discord.py 中编辑消息)