Discord.py 机器人不响应自定义表情符号
Posted
技术标签:
【中文标题】Discord.py 机器人不响应自定义表情符号【英文标题】:Discord.py bot not reacting with custom emoji 【发布时间】:2021-03-21 02:13:49 【问题描述】:我正在制作一个 Discord.py 机器人,并试图让它使用自定义表情符号对一个特定的人做出反应。机器人在带有表情符号的服务器中,但我收到此错误:discord.errors.HTTPException: 400 Bad Request (error code: 10014): Unknown Emoji
我是 Discord.py 的新手,顺便说一句,哈哈。
这是我的代码:
@bot.event
async def on_message(message):
if message.author.id == 514605665306673172:
await message.add_reaction('<:android:332598085782077451>')
如果我要使用默认的 Discord Emoji,则代码可以正常工作。任何帮助将不胜感激
(Python 3.8.2)
【问题讨论】:
这很奇怪,对我来说很好用 【参考方案1】:您可以尝试获取discord.Emoji
对象,方法如下
emoji = bot.get_emoji(332598085782077451)
await message.add_reaction(emoji)
还要确保启用默认意图和intents.members
【讨论】:
我已经试过了,我得到了同样的错误:(但是我会把intents.members放在哪里 here's特权意图介绍,看看吧【参考方案2】:您确定您的表情符号名称和 ID 正确吗?如果您不确定是否可以使用 /:emoji_name:
( 转到服务器,输入表情符号,在其前面放一个 / 来获取它。您会看到表情符号返回到它的 :name: 表单,并带有/ 在它前面。)然后发送。使用自定义表情符号时,discord 将发送表情符号的名称:id。 (普通表情符号会返回 unicode 字符)。
【讨论】:
以上是关于Discord.py 机器人不响应自定义表情符号的主要内容,如果未能解决你的问题,请参考以下文章
Discord bot 添加对消息 discord.py 的反应(无自定义表情符号)
如何让不和谐机器人使用 discord.py 向消息添加表情符号反应?