因此,我的当前事件侦听器可以很好地记录已删除的消息,我现在遇到的问题是,如果已删除的消息具有图像附件,则大多数情况下,它将无法正确显示,因为无法再访问图像url。您将永远看到不和谐的加载图像
我想问一下,是否有一种方法可以始终如一地显示已删除的图像。我已经看到另一个discord机器人毫无疑问地显示了这些图像,所以这一定是可能的,但我不知道怎么做。也许可以下载并重新上传图片
这就是我现在拥有的:
@commands.Cog.listener()
async def on_message_delete(self, message):
#some code....
if message.attachments:
if len(message.attachments) == 1:
if message.attachments[0].url.endswith(('.jpg', '.png', '.jpeg', '.gif')):
embed.set_image(url=message.attachments[0].url)
else:
embed.add_field(name="Attachment", value=message.attachments[0].url)
#some more code
提前谢谢,非常感谢您的帮助
我刚刚做了一个快速的实验,研究了另一个机器人是如何做到这一点的,我相信我已经为您找到了一个解决方案。发送图像时,其URL位于discordapp.com的CDN子域上。删除后,它将从此位置删除,但您仍然可以通过media.discordapp.net访问它
例如: https://cdn.discordapp.com/attachments/836128641808990239/855081455420047360/d46d2f3581fe4b335539669da5853ec3.jpghttps://media.discordapp.net/attachments/836128641808990239/855081348220583956/d46d2f3581fe4b335539669da5853ec3.jpg
它们都是相同的图像,但bot会记录第二个URL。希望这能有所帮助
相关问题 更多 >
编程相关推荐