【问题标题】:How to partially download a telegram file in with pyrogram如何使用 pyrogram 部分下载电报文件
【发布时间】:2022-06-21 09:36:45
【问题描述】:

实际上,为了媒体信息,我需要下载文件的前几块(视频/音频/等)。

热图:
https://docs.pyrogram.org/api/methods/stop_transmission
https://docs.pyrogram.org/api/bound-methods/Message.download

progress fn(当文件下载 1% 时停止传输)

    def prog(curr, total, client):
      print(curr * 100 / total, '%', flush=True)
      if curr * 100 / total >= 1:
        client.stop_transmission()

实现

    tmp = msg.download(progress=prog, in_memory=True, progress_args=(client,))
    print(type(tmp), flush=True)
    with open(f'{msg.id}', 'wb') as f:
        f.write(tmp.getvalue())

我得到的输出是:

1.8244671728371091 %
<class 'NoneType'>

here

【问题讨论】:

  • 请澄清您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。
  • 我只需要使用 pyrogram telegram API 下载大约 1% 的文件。我无法显示我的整个复杂代码。

标签: python python-3.x pyrogram


【解决方案1】:

我认为您可以使用 stream_media() 函数来做到这一点 https://docs.pyrogram.org/api/methods/stream_media

【讨论】:

    猜你喜欢
    • 2023-02-14
    • 1970-01-01
    • 1970-01-01
    • 2010-12-20
    • 2020-10-18
    • 2020-07-18
    • 2011-01-03
    • 2012-11-22
    • 1970-01-01
    相关资源
    最近更新 更多