(discord.py) 如何让我的 Discord Bot 重新发送消息中的附件?

时间:2021-04-10 12:54:02

标签: python discord discord.py

我在这里想问的是,在特定事件/情况下,如何让 Discord 机器人重新发送消息中的所有附件?

这是我的代码:

    if "ngab" in message.content.lower():
        content=message.content.lower()
        final=content.replace("ngab",":ng::ab:")
        if len(final)<=2000:
            attc = message.attachments    
            ref = message.reference
            await message.delete()        
            await message.channel.send(f'{message.author.mention}: {final}', reference=ref)
        else:
            await message.reply(f"kata mas discord kepanjangan :ng::ab: {message.author.mention}")

这里我已经将邮件的附件保存到变量attc中了,但是我还是不知道如何通过bot重新发送附件。我翻了翻文档,尝试使用discord.File,这需要我先保存附件,这可能会卡住8岁的cpu,然后我尝试了这个

            if message.attachments:
                for attachment in attc:    
                    await message.channel.send(attachment.url)

效果很好,尽管附件是与邮件分开发送的,而且是一个接一个地发送的。那么如何让机器人一次性发送所有信息?

预先感谢任何帮助或只是阅读的人。请原谅我在这篇文章中犯的任何错误。

2 个答案:

答案 0 :(得分:0)

我不知道你的意思是什么,你上传的每个附件都是它自己的消息,所以无论你是否使用 discord.File,它都会是 2 条不同的消息。

答案 1 :(得分:0)

您不能发送多次。 此外,用户不能发送多个附件。 所以别介意。