Разбор ответа api бота телеграммы

Я пытаюсь редактировать сообщения в боте Telegram с помощью editMessageText, но для этого требуется < em> message_id целое число, поэтому мне нужно как-то разобрать ответ телеграммы, когда я отправляю сообщение с

https://api.telegram.org/bot12345:abcdefghijk-lmnopqrstuvwxyz/sendMessage?text=Some%20Text&chat_id=123456789

он ответит примерно так:

{"ok":true,"result":{"message_id":213557,"from":{"id":bot_id,"is_bot":true,"first_name":"BotName","username":"SpaceTheBot"},"chat":{"id":123456789,"title":"A Group","type":"supergroup"},"date":1612928163,"text":"Some text"}}

поэтому я хочу проанализировать message_id, чтобы потом отредактировать его.

Попробуй это. Хотя это предназначено для удаления сообщений, вы можете подать заявку на редактирование сообщений. stackoverflow.com/questions/65761031/   —  person Quebeh    schedule 10.02.2021

Привет! спасибо за ваш ответ, но я не использую длинный метод опроса, я благодарен за вашу помощь.   —  person Quebeh    schedule 11.02.2021

См. также:  Подпроцесс Python.Popen + ffmpeg прерывает ввод терминала
Понравилась статья? Поделиться с друзьями:
IT Шеф
Комментарии: 1
  1. Quebeh

    Вам нужно будет десериализовать ответ от Telegram. После этого это будет объект Python. В этом случае, поскольку это объект JSON, он будет преобразован в dict и будет доступен как таковой.

    import json
    
    response = '{"ok":true,"result":{"message_id":213557,"from":{"id":"bot_id","is_bot":true,"first_name":"BotName","username":"SpaceTheBot"},"chat":{"id":123456789,"title":"A Group","type":"supergroup"},"date":1612928163,"text":"Some text"}}'
    result = json.loads(response)
    
    print(result["result"]["message_id"])
    >>> 213557
    

    Если вы используете запросы, у него есть собственный кодировщик JSON / декодеры

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: