Discord.py 如何在 message.content 中获取附件
Discord.py How can get attachment in message.content
我正在尝试制作一个机器人。这是一个存档机器人。如果某条消息获得了一些表情符号和一些数量,它会将消息移动到用户选择的特定频道。我有一个问题:它运行良好,但在 message.content 中没有获得附件。只是获得字符串,而不是附件。我该如何解决这个问题?
这是我的代码:
@Bot.event
async def on_raw_reaction_add(payload):
user = Bot.get_user(payload.user_id)
guild = Bot.get_guild(payload.guild_id)
channel =
guild.get_channel(payload.channel_id)
message = await channel.fetch_message(payload.message_id)
#some files is opening in these lines...
if #some check points..
else:
await guild.get_channel(to_list[sıra]).send("Written by {} :\n\n {}".format(message.author.mention,message.content))
await guild.get_channel(from_list[sıra]).send("{} your message move to this channel --> {}".format(message.author.mention,Bot.get_channel(to_list[sıra]).mention))
await message.add_reaction("✔️")
如何在 on_raw_reaction_add 函数的 message.content 中获取附件?
尝试在 send()
方法中使用 files
。示例:
await channel.send(
message.content, files=[await f.to_file() for f in message.attachments]
)
在你的情况下,它可能看起来像这样:
await guild.get_channel(to_list[sıra]).send(
"Written by {} :\n\n {}".format(message.author.mention, message.content),
files=[await f.to_file() for f in message.attachments],
)
参考:
我正在尝试制作一个机器人。这是一个存档机器人。如果某条消息获得了一些表情符号和一些数量,它会将消息移动到用户选择的特定频道。我有一个问题:它运行良好,但在 message.content 中没有获得附件。只是获得字符串,而不是附件。我该如何解决这个问题?
这是我的代码:
@Bot.event
async def on_raw_reaction_add(payload):
user = Bot.get_user(payload.user_id)
guild = Bot.get_guild(payload.guild_id)
channel =
guild.get_channel(payload.channel_id)
message = await channel.fetch_message(payload.message_id)
#some files is opening in these lines...
if #some check points..
else:
await guild.get_channel(to_list[sıra]).send("Written by {} :\n\n {}".format(message.author.mention,message.content))
await guild.get_channel(from_list[sıra]).send("{} your message move to this channel --> {}".format(message.author.mention,Bot.get_channel(to_list[sıra]).mention))
await message.add_reaction("✔️")
如何在 on_raw_reaction_add 函数的 message.content 中获取附件?
尝试在 send()
方法中使用 files
。示例:
await channel.send(
message.content, files=[await f.to_file() for f in message.attachments]
)
在你的情况下,它可能看起来像这样:
await guild.get_channel(to_list[sıra]).send(
"Written by {} :\n\n {}".format(message.author.mention, message.content),
files=[await f.to_file() for f in message.attachments],
)
参考: