Estoy usando el requests
módulo de Python para enviar un RESTful GET a un servidor, para lo cual obtengo una respuesta en JSON. La respuesta JSON es básicamente solo una lista de listas.
¿Cuál es la mejor manera de forzar la respuesta a un objeto nativo de Python para que pueda iterarlo o imprimirlo usando pprint
?
python
json
rest
python-requests
felix001
fuente
fuente
str()
. Por otro lado, no es malo tener datos Unicode (en preparación para el futuro).response.json()
, ya que hará un mejor trabajo al descubrir la codificación utilizada. (Descargo de responsabilidad, escribí algo de ese código).response.text()
?requests.compat.json.loads(resp_text)
Como estás usando
requests
, debes usar eljson
método de respuesta .Se detecta automáticamente que decodificador para uso .
fuente
pip install requests
embargo, puede en lugar de usar el paquete deb.data
una lista de listas o un diccionario.data
refleja la estructura del JSON que está leyendo. Por ejemplo, si la respuesta es:[{"a": {...}}]
,data
es una lista, conlist[0] == {'a': {...}}
. Si la respuesta es{"a": "b", "c": "d"}
,data
es un dict. Eso responde tu pregunta?>>> import requests >>> r = requests.get('http://httpbin.org/get') >>> r.json <bound method Response.json of <Response [200]>> >>> r.json() {'args': {}, ...}