我一直在寻找解决这个问题的解决方案 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)
答案 0 :(得分:0)
fetch_message
是通道对象上的方法,而不是机器人客户端。所以你需要先获取频道。
channel = bot.get_channel(payload.channel_id)
message = await channel.fetch_message(payload.message_id)
...