【问题标题】:Get emoji from reaction in discord.py从 discord.py 中的反应中获取表情符号
【发布时间】:2020-12-24 21:45:49
【问题描述】:

我正在尝试制作一个嵌入反应的“接受/拒绝”,但我无法了解用户对哪个表情符号做出了反应。

message = await guild.owner.send(embed=embed)

await message.add_reaction('✔')
await message.add_reaction('❌')

def check(reaction, user):
    print(f"reacted")
    return guild.owner == message.author and str(reaction.emoji) in ["✔", "❌"] and isinstance(message.channel, discord.DMChannel)

reaction, user = await bot.wait_for('reaction_add', timeout=1000.0, check=check)

if reaction.emoji == "✔":
    print("tick")
elif reaction.emoji == "❌":
    print("cross")

我明白了

反应过来

但我没有得到任何关于 crosstick 的内容。有什么办法得到吗?

提前致谢

【问题讨论】:

  • check 函数的 return 语句似乎没有关闭。我会尝试打印出它的结果
  • @Graygood 我试过了,但只有当我对 cross 做出反应时才有效。有了蜱虫,它保持不变。我尝试在函数之后创建一个print("code continued running"),但它只在我对 cross 做出反应时才运行
  • 尝试将 elif 部分切换为 just if,因为现在它只进入这个 if 语句一次
  • 你能分享一下它的功能吗?我认为这也将包括嵌入

标签: python python-3.x discord discord.py discord.py-rewrite


【解决方案1】:

只需在检查函数中做同样的事情,默认情况下不和谐没有这个反应✔你正在寻找✅。

if str(reaction) == '❌': # or str(reaction.emoji)
    print('cross')
elif str(reaction) == '✅':
    print('tick')

【讨论】:

  • 答案有帮助吗?
  • 抱歉,因为放假没能上网,现在我去看看
猜你喜欢
  • 2021-02-15
  • 1970-01-01
  • 2021-08-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-02
  • 2022-01-19
相关资源
最近更新 更多