我正在尝试使用discord.py版本0.16.12添加自定义表情符号作为对邮件的反应,我无法使其正常运行。这是我正在使用的代码:
@bot.event
async def on_message(message):
if message.content.find(':EmojiName:'):
await bot.add_reaction(message, '<:EmojiName:#EmojiID#>')
我也尝试将表情符号id作为类似于discord.js (message, '#EmojiID#')
的字符串传递。我是否应该将add_reaction
函数传递给表情符号对象?如果是这种情况,我如何从get_all_emojis
函数中找到特定的表情符号对象?
答案 0 :(得分:4)
您可以使用效用函数discord.utils.get
来获取相应的Emoji
object。
from discord.utils import get
@bot.event
async def on_message(message):
# we do not want the bot to reply to itself
if message.author == bot.user:
return
if ':EmojiName:' in message.content:
emoji = get(bot.get_all_emojis(), name='EmojiName')
await bot.add_reaction(message, emoji)
答案 1 :(得分:1)
async def on_message(message):
if message.content.find(':EmojiName:'):
for x in client.get_all_emojis():
if x.id == '#EmojiID#':
return await client.add_reaction(message, x)