получить json значение python - PullRequest
       4

получить json значение python

0 голосов
/ 05 февраля 2020

У меня есть значение JSON, и я хочу получить каждое значение в нем.

{"profile": [{"user_id": "91609430", "user_phone": "6525295", "user_type": "panger", "user_tier": "silver", "user_name": "Robert Sambuena", "user_email": "sauena.@gmail.com"}], "is_from_hc": false, "errors": [{"msg": "Driver Profile Not Found", "code": 404, "key": "profile.driver"}], "soundwaves": {"audio_messages": ["hc-education"], "access_token": "9f7fd8f060f2dc2fa", "has_context": false, "queue": "", "iso_language": "", "context": {"user_id": "", "user_tier": "", "user_name": "", "user_phone": "", "is_from_hc": false, "user_type": "", "has_context": false, "zendesk_language": "", "taxtype": "", "scenario_name": "", "zen_country": "", "booking_code": ""}}}

Ответы [ 2 ]

1 голос
/ 05 февраля 2020

Для этой задачи вы можете использовать Python встроенный json lib:

import json

json_str = '{"profile": [{"user_id": "91609430", "user_phone": "6525295", "user_type": "panger", "user_tier": "silver", "user_name": "Robert Sambuena", "user_email": "sauena.@gmail.com"}], "is_from_hc": false, "errors": [{"msg": "Driver Profile Not Found", "code": 404, "key": "profile.driver"}], "soundwaves": {"audio_messages": ["hc-education"], "access_token": "9f7fd8f060f2dc2fa", "has_context": false, "queue": "", "iso_language": "", "context": {"user_id": "", "user_tier": "", "user_name": "", "user_phone": "", "is_from_hc": false, "user_type": "", "has_context": false, "zendesk_language": "", "taxtype": "", "scenario_name": "", "zen_country": "", "booking_code": ""}}}'
json_obj = json.loads(json_str)

# Now you can iterate over the json_obj as you would do with any dict:
for k, v in json_obj.items():
    print(k, v)
0 голосов
/ 05 февраля 2020

Использование yaml lib в python: (ответ обновляется по мере необходимости)

import yaml

json_str = '{"profile": [{"user_id": "91609430", "user_phone": "6525295", "user_type": "panger", "user_tier": "silver", "user_name": "Robert Sambuena", "user_email": "sauena.@gmail.com"}], "is_from_hc": false, "errors": [{"msg": "Driver Profile Not Found", "code": 404, "key": "profile.driver"}], "soundwaves": {"audio_messages": ["hc-education"], "access_token": "9f7fd8f060f2dc2fa", "has_context": false, "queue": "", "iso_language": "", "context": {"user_id": "", "user_tier": "", "user_name": "", "user_phone": "", "is_from_hc": false, "user_type": "", "has_context": false, "zendesk_language": "", "taxtype": "", "scenario_name": "", "zen_country": "", "booking_code": ""}}}'
json_obj = yaml.load(json_str)
# Retrive the Profile Value like this
profile = json_obj['profile']
print(profile)
# Iterate to get each value in profile
for i in profile:
    for j in i:
        print(j," : ", i[j])
...