Pythonに新しく、私の要求をJSONとして正しくエンコードしているかどうかわかりません。私はJSON内の特定の要素にアクセスできるようにしようとしています。これは私に与えPythonでネストされたJSON要素にアクセスする
import requests
import json
url = "sample.com"
access_token "xxxxx"
headers = {
'authorization': access_token,
'cache-control': "no-cache"
}
response = requests.request("GET", url, headers=headers)
jsonvar = response.json()
print(jsonvar)
:
{u'sleep':
[{u'logId': 11208762595,
u'dateOfSleep': u'2016-03-23',
u'isMainSleep': True,
u'startTime': u'2016-03-22T23:43:30.000',
u'restlessCount': 7,
u'duration': 12540000,
u'restlessDuration': 13,
u'minuteData': [{u'value': u'2', u'dateTime': u'23:43:30'},
{u'value': u'1', u'dateTime': u'23:44:30'}],
u'awakeCount': 1,
u'minutesAfterWakeup': 0}],
u'summary':
{u'totalTimeInBed': 418,
u'totalMinutesAsleep': 395,
u'totalSleepRecords': 2}}
が、私はそれを読みやすくするための試みで出力を変えてきたこれは私が持っているものです。
myvar = jsonvar['isMainSleep']
私は、これは別の状況で動作するように取得することができたが、のどれも:とにかく私はこのような何かを試してみた
などisMainSleep
などの変数に特定の要素の値を代入したいと思いますここでの違いと思われるデータが入れ子になっています。
'jsonvar [ '睡眠'] [ 'isMainSleep']' ' –
isMainSleep'が内部にネスト辞書にあります他の辞書の中にネストされたリスト。 'jsonvar [u'sleep]] [0] [u'isMainSleep ']'が必要です。 'u'はUnicode文字列であり、' [0] 'はリストの最初の項目であるため、先頭に 'u'があることに注意してください。何らかのエラーチェックを追加することもできます。 – solarc
@ solarcあなたの提案がうまくいった!しかし、ただのコメントのため、私はそれを答えとして受け入れることができません。このデータを実際にJSON形式で出力するより良い方法はありますか? –