Saltar al contenido

Cómo extraer datos de un archivo JSON

Este dilema se puede resolver de variadas maneras, pero te mostramos la resolución más completa en nuestra opinión.

Solución:

Puedes usar jq para procesar archivos json en shell.

Por ejemplo, guardé su archivo json de muestra como raul.json y luego corrió:

$ jq .message.temperature raul.json 
409.5
25.1
409.5
$ jq .message.humidity raul.json 
null
40
null

jq está disponible preempaquetado para la mayoría de las distribuciones de Linux.

Probablemente hay una manera de hacerlo en jq en sí mismo, pero la forma más sencilla que encontré para obtener ambos valores deseados en una línea es usar xargs. Por ejemplo:

$ jq 'select(.message.id == 1490) | .message.temperature, .message.humidity' raul.json | xargs
25.1 40

o, si desea recorrer cada uno .message.id ejemplo, podemos agregar .message.id a la salida y uso xargs -n 3 como sabemos que habrá tres campos (id, temperatura, humedad):

jq '.message.id, .message.temperature, .message.humidity' raul.json | xargs -n 3
4095 409.5 null
1490 25.1 40
2039 409.5 null

Luego podría procesar esa salida con awk o lo que sea.


Finalmente, tanto python como perl tienen excelentes bibliotecas para analizar y manipular datos json. Al igual que varios otros lenguajes, incluidos php y java.

Aquí puedes ver las comentarios y valoraciones de los usuarios

Recuerda algo, que tienes la opción de añadir una evaluación acertada .

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *