如何从电报机器人发送文件?

时间:2019-01-07 19:22:08

标签: python bots telegram telegram-bot python-telegram-bot

我正在编码Telegram机器人,我需要将文件发送给用户。我要获取file_id个要发送的文件。我正在关注this answer

要获取file_id,我应该将文件发送到我的Telegram机器人。问题是如何通过我的机器人将文件发送到自身? (也许正在使用API​​?)

1 个答案:

答案 0 :(得分:0)

You can send files,不带file_id

  

有三种发送文件的方式(照片,贴纸,音频,媒体,   等)

     
      
  • 如果文件已经存储在Telegram服务器上的某个位置,则无需重新上传该文件:每个文件对象都有一个file_id字段,   只需将此file_id作为参数传递,而不是上传。那里   这样发送的文件没有限制。
  •   
  • 为电报提供要发送文件的HTTP URL。电报将下载并发送文件。照片最大大小为5 MB,最大大小为20 MB   其他类型的内容最多。
  •   
  • 按照通常通过浏览器上传文件的方式,使用multipart / form-data发布文件。照片最大大小为10 MB,照片最大大小为50 MB   其他文件
  •   

仅当您之前已将file_id发送给某人(使用URL或multipart / form-data)时,才能使用。{p>


因此,如果要发送的文件列表是预定义的“静态”,则可以一次上传所有文件,获取它们的file_id(例如,使用getUpdates方法),存储文件与其各自的file_id之间的关联,最后您的漫游器只能使用file_id与用户通信。

另一方面,如果可能的文件列表有所不同,则只能通过URL或multipart / form-data发送文件。