Análisis de JSON Python: una guía sencilla

Análisis de JSON Python: una guía sencilla

JSON (siglas de 'JavaScript Object Notation') es un formato basado en texto que facilita el intercambio de datos entre diversas aplicaciones. Por ejemplo, una aplicación escrito en C ++ que se ejecuta en Windows puede intercambiar fácilmente datos JSON con una aplicación escrita en Python y que se ejecuta en Linux. Su simplicidad y flexibilidad ha llevado a un uso generalizado en los últimos años, especialmente en preferencia a los formatos anteriores basados ​​en XML.





Hay bibliotecas y kits de herramientas disponibles para analizar y generar JSON desde casi cualquier idioma y entorno. Este artículo se concentra en los métodos y los problemas que surgen al procesar JSON con Python.





Algunas muestras JSON

La entidad JSON más común que encontrará es un objeto : un conjunto de asignaciones de clave-valor en el formato que se muestra a continuación.





que pasa cuando borras tu facebook

person.json:

|_+_|

Así es como puede representar una matriz de objetos. En esta representación, cada elemento de la matriz es un objeto. La siguiente es una muestra de los salarios de los jugadores de béisbol.



salarios.json:

|_+_|

Por supuesto, también puede representar una serie de escalares. Se parece a esto:





|_+_|

Analizando JSON en Python

Python proporciona el json módulo que se puede utilizar tanto para analizar JSON como para generar JSON a partir de objetos y listas de Python.

El siguiente fragmento de código muestra cómo abrir un archivo JSON y cargar los datos en una variable.





|_+_|

Cuando tiene una cadena que contiene los datos JSON, puede convertirla en un objeto (o lista) de Python con lo siguiente:

cómo tener imessage en windows
|_+_|

Para analizar una URL JSON, puede crear un objeto URL usando urllib2 y use json.load () como antes.

|_+_|

Manejo de errores

Cuando el JSON tiene errores, obtendrá un ValueError . Puede manejarlo y tomar medidas correctivas si es necesario.

|_+_|

Analizar JSON desde la línea de comandos

A veces, es útil analizar JSON usando la línea de comando de Python, tal vez para verificar si hay errores o para obtener una salida con sangría agradable.

|_+_|

Para obtener una salida con sangría del archivo JSON anterior, puede hacer lo siguiente:

|_+_|

Y así es como puede cargar el objeto JSON en Python y extraer solo lo que necesita.

|_+_|

Accediendo a los datos

Una vez que haya cargado los datos JSON en una variable de Python, puede acceder a los datos como lo haría con cualquier dictado de Python (o lista, según sea el caso). Por ejemplo, se puede acceder a los datos JSON anteriores de la siguiente manera:

|_+_|

Tipos de datos

Los tipos de datos se determinan automáticamente a partir de los datos. Tenga en cuenta que la edad se analiza como un número entero.

|_+_|

La siguiente tabla de conversión se utiliza para convertir de JSON a Python.

Analizar JSON mediante una clase personalizada

De forma predeterminada, un objeto JSON es analizado en una pitón dictar . A veces, es posible que tenga la necesidad de crear automáticamente un objeto de su propia clase a partir de los datos JSON. Puede hacerlo especificando un gancho_objeto función que maneja la conversión. El siguiente ejemplo muestra cómo.

Aquí hay una clase personalizada que representa un Persona .

|_+_|

Se crea una instancia de esta clase pasando los argumentos necesarios de la siguiente manera:

|_+_|

Para usar esta clase para crear instancias al analizar JSON, necesita un gancho_objeto función definida de la siguiente manera: la función recibe un pitón dictar y devuelve un objeto de la clase correcta.

|_+_|

Ahora puedes usar esto gancho_objeto función al invocar el analizador JSON.

|_+_|

Ejemplos de uso de JSON

JSON es extremadamente popular hoy en día. Muchos sitios web y aplicaciones SaaS (software como servicio) ofrecen salida JSON que las aplicaciones pueden consumir directamente. Algunos de los disponibles públicamente incluyen:

  • StackOverflow / StackExchange. Aquí hay una URL que devuelve una lista de preguntas en formato JSON.
  • GitHub ofrece una API JSON en https://developer.github.com/v3/.
  • Y aquí está la API de Flickr: https://developer.yahoo.com/flickr/.

Si está buscando más ejemplos sobre cómo darle un buen uso, consulte esta guía para construyendo un bot de redes sociales usando Python .

agregar horario de clases al calendario de google

¿Utiliza JSON para consumir o proporcionar servicios? ¿Y estás usando Python en tu pila de tecnología? Explique en los comentarios a continuación.

Cuota Cuota Pío Correo electrónico ¿Vale la pena actualizar a Windows 11?

Windows ha sido rediseñado. Pero, ¿es eso suficiente para convencerte de cambiar de Windows 10 a Windows 11?

Leer siguiente
Temas relacionados
  • Programación
  • Programación
  • Pitón
Sobre el Autor Jay Sridhar(17 Artículos publicados) Más de Jay Sridhar

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse