Análisis del formato JSON con Python
JavaScript Object Notation - JSON
El formato JSON se inspiro en el formato de objetos y arrays que se usa en el lenguaje JavaScript. Pero como Python se invento antes que JavaScript, la sintaxis usada en Python para los diccionarios y listas influyeron la sintaxis de JSON.
De modo que el formato del JSON es casi idéntico a la combinación de listas y ´
diccionarios de Python.
Todos sabemos como luce un objeto JSON, a continuación te doy un ejemplo:
{ "results" : [ { "address_components" : [ { "long_name" : "1600", "short_name" : "1600", "types" : [ "street_number" ] }, { "long_name" : "Amphitheatre Pkwy", "short_name" : "Amphitheatre Pkwy", "types" : [ "route" ] }, { "long_name" : "Mountain View", "short_name" : "Mountain View", "types" : [ "locality", "political" ] }, { "long_name" : "Santa Clara County", "short_name" : "Santa Clara County", "types" : [ "administrative_area_level_2", "political" ] }, { "long_name" : "California", "short_name" : "CA", "types" : [ "administrative_area_level_1", "political" ] }, { "long_name" : "United States", "short_name" : "US", "types" : [ "country", "political" ] }, { "long_name" : "94043", "short_name" : "94043", "types" : [ "postal_code" ] } ], "formatted_address" : "1600 Amphitheatre Parkway, Mountain View, CA 94043, USA", "geometry" : { "location" : { "lat" : 37.4224764, "lng" : -122.0842499 }, "location_type" : "ROOFTOP", "viewport" : { "northeast" : { "lat" : 37.4238253802915, "lng" : -122.0829009197085 }, "southwest" : { "lat" : 37.4211274197085, "lng" : -122.0855988802915 } } }, "place_id" : "ChIJ2eUgeAK6j4ARbn5u_wAGqWA", "types" : [ "street_address" ] } ], "status" : "OK" }
Análisis de JSON con Python:
Para el ejemplo de hoy usaremos la librería integrada json para analizar el
Antes de ejecutar nuestro programa, veamos como funciona.
Como pueden ver, lo primero que hacemos es importar el modulo json, luego definimos una variable con el identificador "users" la cual almacenara una lista con nuestros objetos JSON.
Luego de esto hacemos uso del metodo "loads" del modulo "json", lo que obtenemos de json.loads() es una lista de Python que recorreremos con un bucle for, y cada elemento dentro de esa lista es un diccionario de Python. Una vez analizado el JSON, podemos usar el operador indice de Python para extraer los distintos fragmentos de datos de cada usuario. No tenemos que usar la librería JSON para rebuscar a través del JSON analizado, ya que los datos devueltos son sencillamente estructuras nativas de Python.
Al momento de ejecutar nuestro programa el resultado debería quedarnos algo así:
Como pueden ver el programa nos informa de cuantos usuarios existen, esto lo logra contando los objetos que existen, luego recorremos todos los elementos de cada objeto y lo mostramos en pantalla.
No te limites a no agregar más objetos, experimenta con este código y cuéntanos en los comentarios como te fue :D.
Mucha parte de la información que les e proporcionado en este articulo, es del libro "Python para informáticos" escrito por Charles Severance, un libro muy bueno, se los recomiendo :D.
Deja una respuesta