tamaz1987
@tamaz1987
Умный, красивый

Как получить данные из JSON через VK_api?

Через VK_api получаю event longpoll.
Отсекаю всё до event.message, в котором содержится:

{'date': 1717174130, 'from_id': 219097194, 'id': 0, 'out': 0, 'version': 10000414, 'attachments': [], 'conversation_message_id': 706, 'fwd_messages': [], 'important': False, 'is_hidden': False, 'payload': '{"type":"Защищаем голову"}', 'peer_id': 2000000006, 'random_id': 0, 'text': '[club225322720|@club225322720] Выбрать голову', 'is_unavailable': True}

Как я понимаю, это словарь.
Я хочу из него получить payload:

'payload': '{"type":"Защищаем голову"}',

Если другие поля я смог получить просто указав название индекса в словаре, то тут так не получается.

Попробовал вот так:

payload = event.object.message['payload'][0]['type']

Ничего не получилось.
Нет ошибок. Просто скрипт заканчивает работу без ошибок.

Я так понимаю payload – это словарь в словаре.

Как мне получить payload из этого словаря?
  • Вопрос задан
  • 106 просмотров
Решения вопроса 1
@BARBARISKA0
В event.object.message['payload'] находится строка
Ее можно превратить в словарь и уже получать 'type'
json.loads(event.object.message['payload'])['type']
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы