Python telethon 获取消息媒体文件名

Python telethon get message media file name

我有以下代码可以从群组中获取消息:

getmessage = client.get_messages(dialog, limit=1000)
for message in getmessage:
    try:
        if message.media == None:
            print("message")
            continue
        else:
            print("Media**********")
            client.download_media(message)

上面的代码写入媒体。

我在写入文件之前需要知道文件 name/file 类型,我怎样才能得到它?

您可以使用您选择的文件名以确保将使用所述文件名:

filename = 'some-file'
filename = client.download_media(message, filename)

然后 filename 将是 some-file 并具有正确的扩展名。

否则Telethon会为文件生成一个文件名(它会尝试原来的名字,如果存在就追加(n)以避免覆盖现有文件),所以你无法真正知道在哪里它将被预先保存(但该方法确实 return 最终文件名)。