我不知道如何正确使用 fetch_message,discord.py

时间:2021-01-16 00:55:47

标签: python discord.py

我一直在寻找解决这个问题的解决方案 2 个小时,所以我决定在这里注册并询问。 fetch_message() 方法不会将 message_id 形成为实际的消息。我也尝试使用过时的 get_message 方法。我要做的是使用此消息并添加对其 String 值添加反应的用户。错误:

AttributeError: 'Bot' 对象没有属性 'fetch_message'

import discord
from discord.ext import commands

TOKEN ="******"

client = commands.Bot(command_prefix=".")
channel = client.get_channel(796410027455283220)

days = ["monday", "tuesday", "wednesday", "thursday", "friday"]

@client.event
async def on_ready():
    print("logged in")

    @client.event
    async def on_message(message):
        if message.author == client.user:
            return

    @client.event
    async def on_raw_reaction_add(payload):
        message_id = payload.message_id
        msg = await client.fetch_message(message_id)

        user_id = payload.user_id
        user = client.get_user(user_id)

        await msg.edit(content=msg + user)





    @client.event
    async def on_reaction_remove(reaction, user):
        channel = reaction.message.channel
        await channel.send('removed scrim')


client.run(TOKEN)

1 个答案:

答案 0 :(得分:0)

fetch_message 是通道对象上的方法,而不是机器人客户端。所以你需要先获取频道。

channel = bot.get_channel(payload.channel_id)
message = await channel.fetch_message(payload.message_id)
...
相关问题