为什么我不能在 discord.py 中使用区域指标符号字母表情符号?

Why can't i use regional indicator symbol letter emoji in discord.py?

当我尝试使用像“”这样的表情符号时,出现了这个错误:

Command raised an exception: HTTPException: 400 Bad Request (error code: 10014): Unknown Emoji

这是我的代码:

    @commands.command(name="warcaby", aliases=["checkers"])
    async def warcabycmd(self, ctx):
      gracz1 = ctx.author
      gracz2 = ctx.message.mentions[0]
      plansza_start = """(board)"""
      embed=discord.Embed(title=f'Grasz z {gracz2}. Ruch gracza {gracz1}!', description=plansza_start, color=ctx.author.color)
      embed.add_field(name='Instrukcje', value='Wybierz pole, a wybrać pionek, a następnie wybierz, w którą stronę idziesz!')
      msg = await ctx.send(content=None, embed=embed)
      await msg.add_reaction(":regional_indicator_f:")
      await msg.add_reaction(":regional_indicator_g:")
      await msg.add_reaction(":regional_indicator_h:")
      await msg.add_reaction("two")
      await msg.add_reaction("three")
      await msg.add_reaction("four")
      await msg.add_reaction("five")
      await msg.add_reaction("six")
      await msg.add_reaction("seven")
      await msg.add_reaction("eight")

你能帮我吗?

试试这个

await msg.add_reaction(":regional_indicator_a:")

:regional_indicator_a: 是 discord 的表情符号代码。

机器人将不和谐的表情符号视为 unicode 符号。机器人需要符号,而不是他们的名字。如果您告诉它表情符号是 :smile:,它就无法对消息做出反应。您需要告诉它表情符号是“”,或等字母的“”。

你可以在电脑上获取这些表情符号,方法是在表情符号前添加一个\。请查看随附的屏幕截图。

但是它不适用于数字。使用的符号是:'1️⃣','2️⃣'等

获取表情符号的一种方法是使用终端打印和复制表情符号。 执行一个简单的命令,然后在终端中查看您提供的表情符号的输出。终端打印的是您需要在代码中使用的内容。

@commands.command()
async def emojiprint(ctx, *, emojis):
    print(emojis)

这是您的代码,我做了一点改动。我测试过它似乎有效!

    @commands.command(name="warcaby", aliases=["checkers"])
    async def warcabycmd(self, ctx):
        gracz1 = ctx.author
        gracz2 = ctx.message.mentions[0]
        plansza_start = """(board)"""
        embed=discord.Embed(title=f'Grasz z {gracz2}. Ruch gracza {gracz1}!', description=plansza_start, color=ctx.author.color)
        embed.add_field(name='Instrukcje', value='Wybierz pole, a wybrać pionek, a następnie wybierz, w którą stronę idziesz!')
        msg = await ctx.send(content=None, embed=embed)
        emoji_list = ['', '', '', '2️⃣', '3️⃣', '4️⃣', '5️⃣', '6️⃣', '7️⃣', '8️⃣']
        for i in emoji_list:
            await msg.add_reaction(i)