私はr = requests.post(something)
を使用しています。私はjsonが返されることを期待しています。 r.headers
を見ると、私は戻って'Content-Type': 'application/json' and 'Content-Encoding': 'gzip'
になる。Python json.loads(r.text)がタイプ<class 'list'>を返します。
私はdict
のオブジェクトを期待していjson.loads(r.text)
を行う代わりに、それは<class 'list'>
これは辞書を作成していない理由の任意のアイデアですか?しかし、
[{'contentId': '0ee022728af31b01', 'creationTS': 1484778192149,
'updateTS': 1484778192188, 'lastUser': 'cmmigration', 'mimeType':
'application/pdf', 'sourcePath': None, 'effectiveTS': None,
'softDeleteTS': None, 'contentFileName': '[DRAFT] (null).pdf',
'applicationId': 'ICX', 'currentState': 1, 'applicationName': 'ICX',
'versionNum': 1, 'chronicleId': '0ee022728af31b00', 'expirationTS':
1650030026000, 'versionLabel': 'WIP', 'contentFilePath':
'/PO/2015/03/13/49412051/', 'lockDate': None, 'encryptedFlag': False,
'authorId': 'migration', 'solrACLList': None, 'customAttributes':
'{"r_object_id":"097b4c76800e5d55","icon_view_allow":"SP","subject":"Icon"
,"icon_pvendor":620418,"r_creation_date":"2015-04-17T09:40:28","ic_store_num":"xxxx","ic_mvendor":50031248,"ic_oded":"0","ic_upd_user_id":"txrxxx","icon_src_system":"I2GO","isanned":"0","icon_po_lead_date":"2015-04-13T20:35:06","language_code":"en_US","ic_user_id":"txrxxx","r_modify_date":"2015-04-17T09:40:29","i_po_num":"49412051","icon_bus_doc":750,"i_indexed":"0","icon_lead_num":"-1"}', 'softDeleteFlag': False, 'lockFlag': False, 'archiveTS': None, 'lockId': None, 'fileSize': 223062}]</pre>
データは '{}'ではなく '[]'で囲まれているので、オブジェクト(dict)ではなく配列(つまりリスト)になります。 – BrenBarn
'json.loads(r.text)'ではなく 'r.json()'を実行することができますが、同じ結果が得られることに注意してください。 –
FYI、リクエストパッケージにはjsonの便利なメソッドがあり、これはリクエストループと少し統合されています。http://docs.python-requests.org/ja/master/user/quickstart/#json-response-内容 – systemjack