Discord.py 默认表情符号反应

时间:2021-01-14 00:02:49

标签: discord.py

此代码适用于通过反应添加角色,但我只能在 payload.emoji.name 中使用自定义表情进行反应,因此当我将其设置为与electric_plug 相等时它不起作用。有什么办法可以解决吗?

async def on_raw_reaction_add(payload):
    message_id = payload.message_id
    if message_id == 799030902302834698:
      guild_id = payload.guild_id
      guild = discord.utils.find(lambda g : g.id == guild_id, client.guilds) 
    if payload.emoji.name == 'electric_plug':
      role = discord.utils.get(guild.roles, name='Electrical')
      if role is not None:
        member = payload.member
        if member is not None:
          await member.add_roles(role)
        else:
          print('no member')
      else:
        print('no role')

1 个答案:

答案 0 :(得分:0)

替换 unicode 表情符号的“electric_plug”名称。 Unicode 表情符号看起来像这样:?

您可以通过两种方式获取 unicode 表情符号。

首先,您可以浏览表情符号百科并搜索您想要的表情符号。之后,只需复制他们提供的那个(框应该是这样的):

Screenshot of copy and paste section of emojipedia

第二个选项会不和谐,正常输入你想要的 unicode 表情符号(例如“:thumbsup:”),然后在它之前放置一个反斜杠(\)。类似这样:

Screenshot of discord after following instructions

之后,发送它,并复制出现的表情符号。它应该与您通常在 Discord 上看到的表情符号版本不同。

获得表情符号后,您的代码应如下所示:

if payload.emoji.name == "?":