В Telegram Bot API есть метод "getFile" https://core.telegram.org/bots/api#getfile. У меня есть бот для тестирования и установка Telegram на Android. Как мне протестировать этот метод, должен ли я отправить файл своему боту? Если да, то как именно?
метод getFile в Telegram Bot API
Ответы (1)
Если кто-то отправил вашему боту файл (фото, видео, документ, аудио и т. д.), getFile
возвращает информацию, позволяющую вашему боту загрузить файл. Чтобы проверить этот метод, сделайте следующее:
Используйте приложение Telegram для Android, чтобы отправить боту фотографию.
Откройте браузер, введите в адресную строку
https://api.telegram.org/bot<token>/getUpdates
Вы должны увидеть несколько
file_id
в ответе. Это миниатюры фото.Выберите
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
.Введите в адресной строке
https://api.telegram.org/file/bot<token>/<file_path>
Вы должны увидеть соответствующую миниатюру фотографии.
Чтобы загрузить файл программно, вы можете выполнить те же действия, что и выше, или использовать библиотеку, например telepot. (Python), который позволяет удобно загружать файлы, не выполняя все вышеперечисленные шаги.
update.message.photo[-1]['file_id']
вместо update.message.photo[0]['file_id']
для загрузки исходного изображения. технически первый - это миниатюра, последний - исходное изображение в массиве
- person amir jj; 28.03.2018