Cómo analizar JSON en Ruby

Cómo analizar JSON en Ruby
La notación del objeto JavaScript, o JSON para abreviar, es un formato de intercambio de datos simple e increíblemente liviano. JSON es fácil de escribir y leer tanto para máquinas como para humanos.

JSON está en todas partes, y se utiliza para transferir datos estructurados a través de la red con una aplicación importante en API.

Esta guía rápida repasará cómo usar y analizar los datos JSON utilizando el lenguaje de programación Ruby.

Que es el análisis?

El análisis es el proceso de desglosar un componente, como una cadena de datos, en varios componentes independientes que se pueden usar individualmente.

Cómo obtener datos JSON

Antes de discutir cómo analizar JSON en Ruby, es bueno asegurarse de que tengamos un archivo JSON para trabajar en.

Si no tiene un archivo JSON para trabajar, puede usar los generadores o consultas JSON en línea de una API pública popular.

Instalación

Para analizar JSON con Ruby, necesitamos instalar el paquete JSON usando el Gem Package Manager. Podemos hacerlo usando el comando:

Instalación de gemas JSON

Para verificar si la instalación es exitosa, abra IRB y ejecute el código:

requiere 'json'

Ejecutar este comando debe devolver verdadero si tiene el paquete instalado correctamente:

IRB (Main): 001: 0> Requerir 'JSON'
=> verdadero

Cómo leer el archivo JSON

El siguiente paso es leer los datos de JSON. Para esto, usamos el archivo.Método de lectura, como se muestra en el código de ejemplo a continuación:

requiere 'json'
RAW_DATA = archivo.Leer ('NASA.json ')

Reemplace la NASA.archivo json con el nombre de archivo real del archivo json que desea analizar.

Cómo analizar los datos JSON

Una vez que tengamos el archivo cargado, podemos analizar los datos JSON utilizando el JSON.método de análisis. Este método creará un hash rubí con las teclas JSON.

Por ejemplo:

requiere 'json'
RAW_DATA = archivo.Leer ('NASA.json ')
nasa_datahash = json.PARSE (RAW_DATA)

Una vez cargado, podemos proceder a trabajar con los datos como un hash rubí ordinario.

Por ejemplo, para obtener las llaves, podemos hacer:

requiere 'json'
RAW_DATA = archivo.Leer ('NASA.json ')
nasa_datahash = json.PARSE (RAW_DATA)
pone nasa_datahash.llaves

También puede obtener los valores almacenados en los datos JSON utilizando el .Método de valores.

Escribir a JSON

Supongamos que queremos escribir en un archivo JSON. Comenzamos leyendo el archivo JSON y creando un hash Ruby. Después de eso, podemos modificar los valores y luego escribirlos en un archivo JSON.

Tomemos un ejemplo de archivo JSON con los valores como se muestra:


"Nombre": "John Doe",
"Age": 30,
"Rol": "Programador de Python",
"Grupo": "Ax-100"

Podemos comenzar leyendo el archivo como:

requiere 'json'
archivo = archivo.Leer ("Usuario.json ")

Una vez que tengamos el archivo cargado, podemos analizar la información de JSON utilizando el JSON.método de análisis como:

user_info = json.parse (archivo);

Una vez que tengamos el archivo analizado en un hash rubí, podemos usar métodos incorporados para manipular los valores.

Comencemos por buscar las teclas:

Pone user_info.llaves

Esto debería imprimir las teclas hash que son básicamente las teclas JSON. Cada valor se asigna a su valor respectivo.

$ ruby ​​json.RB
nombre
edad
role
grupo

El siguiente paso es agregar modificaciones a la clave existente. Simplemente podemos usar el método de fusión como:

Información de usuario.unir!("País: Estados Unidos")

Una vez que haya realizado todos los cambios en el hash Ruby y desee volver a escribir los cambios en el archivo JSON, podemos usar el método de escritura y volcar el contenido del hash en formato JSON como se muestra en el código a continuación.

Archivo.escribir ("usuario.JSON ", JSON.dump (user_info))

Una vez completado, los cambios se agregarán al archivo especificado.


"Nombre": "John Doe",
"Age": 30,
"Rol": "Programador de Python",
"Grupo": "Ax-100",
"País: Estados Unidos"

Convertir hash a json

Si tiene un hash rubí sin procesar, puede generar datos JSON utilizando el método Generar. Considere el ejemplo a continuación:

requiere 'json'
this_hash = : name => "John Doe" ,: Age => 30 ,: Role => "Python Programmer" ,: Group => "Ax-100" ,: Country => "Estados Unidos"
jsonificado = JSON.Generar (this_hash)
pone jsonificado

Lo anterior debe crear datos JSON con las claves y valores correspondientes a las teclas y valores del hash.

Para obtener más información sobre cómo trabajar con Ruby Hashes, considere nuestro tutorial sobre el tema.

Conclusión

Como se muestra en este tutorial, analizar los datos JSON es increíblemente simple en Ruby. Considere la documentación para obtener más información.