【问题标题】:"getFile" method in Telegram Bot APITelegram Bot API 中的“getFile”方法
【发布时间】:2016-03-14 05:43:12
【问题描述】:

在 Telegram Bot API 中有一个方法“getFile”https://core.telegram.org/bots/api#getfile。我有一个用于测试的机器人,并在 Android 上安装了 Telegram。如何测试这种方法,我应该向我的机器人发送文件吗?如果是,那具体是怎样的?

【问题讨论】:

    标签: android telegram telegram-bot


    【解决方案1】:

    如果有人向您的机器人发送了文件(照片、视频、文档、音频等),getFile 会返回允许您的机器人下载文件的信息。要测试此方法,请执行以下操作:

    1. 使用 Android Telegram 应用向您的机器人发送照片。

    2. 打开浏览器,在地址栏输入https://api.telegram.org/bot<token>/getUpdates

      您应该在响应中看到多个file_ids。这些是照片的缩略图。

    3. 选择您喜欢的file_id。在浏览器地址栏输入https://api.telegram.org/bot<token>/getFile?file_id=<file_id>

      在响应中查找file_path。它应该类似于photo\/file_22.jpg。反斜杠只是为了转义正斜杠,所以file_path其实就是photo/file_22.jpg

    4. 在地址栏输入https://api.telegram.org/file/bot<token>/<file_path>

      您应该会看到相应的照片缩略图。

    要以编程方式下载文件,您可以按照与上述完全相同的步骤进行操作,或者您可以使用诸如 telepot (Python) 之类的库,它提供了一种方便下载文件的方法,无需完成上述所有步骤。

    【讨论】:

    • 下载图像我得到一个质量很差的图像而不是原始图像。有没有办法获得原始图像(宽度/高度)?谢谢。
    • 不是有很多尺寸可供选择吗?只需选择您想要的尺寸即可。
    • 我该怎么做?使用:api.telegram.org/file/bot<token>/<file_path> 我可以看到图像,但比原始图像小且质量差。如果我下载图像然后缩放它,我会得到一个质量很差的图像
    • 我正在使用 php 我该如何迁移?简单?将我的机器人代码从 php 转换为 python?需要更换我的 linux 服务器吗?
    • @Mattia 电报客户端在上传到电报 CDN 服务器之前调整它们的大小。在转换之前,您的用户必须选择原始上传方法而不是优化方法
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-07
    • 2021-11-26
    • 1970-01-01
    • 2017-02-17
    • 2020-11-09
    相关资源
    最近更新 更多