【问题标题】:Why can't i use regional indicator symbol letter emoji in discord.py?为什么我不能在 discord.py 中使用区域指示符号字母表情符号?
【发布时间】:2021-02-13 02:57:06
【问题描述】:

当我尝试使用“????”之类的表情符号时我收到此错误:

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")

你能帮我解决这个问题吗?

【问题讨论】:

  • 您可以使用Win + . 直接插入表情符号。
  • 从我在微软的表情符号中看到的没有区域指示符号字母表情符号
  • 会不会是我使用 repl.it 的错?
  • 您究竟想如何使用它们?它们并不是独立的符号。
  • 唯一的官方用途是成对使用它们来编码国旗,但并非所有对实际上都代表一个国家。例如,:regional_indicator_u::regional_indicator_s 将是美国国旗。另一方面,:regional_indicator_f::regional_indicator_g 没有定义。

标签: python discord.py emoji


【解决方案1】:

机器人将不和谐的表情符号视为 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)

【讨论】:

    【解决方案2】:

    试试这个

    await msg.add_reaction(":regional_indicator_a:")
    

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

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-04
    • 1970-01-01
    • 2017-06-17
    • 1970-01-01
    • 2021-11-23
    • 2020-07-15
    • 2019-06-02
    • 2021-11-07
    相关资源
    最近更新 更多