【问题标题】:I want to get the message on which the user is reacted inside the on_reaction_add function in discord.py我想在 discord.py 的 on_reaction_add 函数中获取用户反应的消息
【发布时间】:2021-12-15 03:48:02
【问题描述】:

我想在 meme 消息中创建一个带有反应的 meme 机器人,每当有人点击反应时,机器人就会在他/她的 dm 中发送 meme。 我无法找到一种方法来做到这一点! 任何人都可以帮助我吗?

@client.event
async def on_reaction_add(reaction, user):
  if user != client.user:
    if str(reaction.emoji) == "➡️":

【问题讨论】:

  • 你可以使用reaction.message
  • 不,我不能说 > flags=>
  • 你不能是什么意思? reaction.message 为您提供 message 对象。如果您想要实际内容,请使用reaction.message.content
  • 它总是返回“None”
  • 请编辑您的问题以包含您迄今为止尝试过的内容

标签: discord discord.py


【解决方案1】:

对于初学者,请使用 on_raw_reaction_add 事件,该事件还会检测添加到不在您的机器人缓存中的帖子的反应 => https://discordpy.readthedocs.io/en/stable/api.html#discord.on_raw_reaction_add

然后,您首先检查添加反应的不是您的机器人,如果是,您停止该功能。然后,您有几个解决方案。我会创建一个 sqlite 数据库,在其中存储每个带有链接和消息 ID 的 meme。因此,在您的事件中,您查看添加您的反应的帖子 ID 是否在您的数据库中,如果是,您将链接到该 ID 的链接发送到 dm。

【讨论】:

    猜你喜欢
    • 2020-11-07
    • 2021-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-27
    • 1970-01-01
    • 2021-08-02
    相关资源
    最近更新 更多