Python下载电报媒体
#python #telegram #pyrogram
# Download from Message
await app.download_media(message)

# Download from file id
await app.download_media(message.photo.file_id)

# Keep track of the progress while downloading
async def progress(current, total):
    print(f"{current * 100 / total:.1f}%")

await app.download_media(message, progress=progress)

参数:

  • message(消息| str)传递包含媒体,媒体本身(message.audio,message.video,â€)的消息或作为字符串的文件ID。
  • file_name(str,可选) - 要使用的自定义file_name,而不是电报提供的file_name。默认情况下,所有文件均在您的工作目录中的下载文件夹中下载。您还可以指定在自定义位置下载文件的路径:以/–的结尾路径被视为目录。所有不存在的文件夹将自动创建。
  • in_memory(bool,可选) - 通过True以下载内存媒体。将返回具有其属性的二进制文件样对象。名称集将返回。默认为false。
  • block(bool,可选) - 阻止代码执行,直到下载文件为止。默认为true。
  • progress(可呼叫,可选) - 传递回调函数以查看文件传输进度。该功能必须将(当前,总)作为位置参数(查看以下其他参数以获取详细说明),并且每次成功传输新文件块时都会被回电。
  • progress_args(元组,可选) - 进度回调功能的额外自定义参数。您可以传递进度回调范围中所需的任何内容;例如,消息对象或客户端实例为了使用更新的进度状态编辑消息。