Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

144
Vistas
Extraer y analizar JSON enorme incompleto en NodeJS

Imagine un escenario en el que tengo un archivo JSON enorme en una esencia de Github. Ese JSON es una matriz de objetos y tiene más de 30k líneas. Ahora quiero realizar ETL (Extraer, Transformar, Cargar) esos datos directamente desde Github gist a mi base de datos. Desafortunadamente, el último objeto de ese JSON está incompleto y no tengo ningún control en la fuente de datos externa. Lo que significa que, en una demostración simple, obtengo los datos de esta manera:

[{ "name": { "first": "foo", "last": "bar" } }, { "name": { "first": "ind", "last": "go

¿Cuál es la mejor práctica o cómo puedo extraer un archivo JSON tan grande y analizarlo correctamente en NodeJs?

Intenté analizar usando JSON.parse() regular y un paquete npm llamado "parcial-json-parser" pero no fue de ayuda.

Editar

Encontré una solución de una fuente externa que resuelve problemas de JSON y ETL incompletos. Estoy pegando ese fragmento aquí:

 import fetch from "node-fetch"; import StreamArray from "stream-json/streamers/StreamArray.js"; const main = async () => { const invalidJSON = await fetch( "<raw_gist_array_of_objects_api_endpoint>" ).then((r) => r.body); const finalData = []; const pipeline = invalidJSON.pipe(StreamArray.withParser()); pipeline.on("data", (data) => { finalData.push(data.value); }); await new Promise((r) => { pipeline.on("end", r); pipeline.on("error", r); }); console.log(finalData); }; main();
about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Creo que primero debes arreglar la estructura JSON. Solo prueba este enfoque:

 import untruncateJson from "untruncate-json"; const str = `[{ "name": { "first": "foo", "last": "bar" } }, { "name": { "first": "ind", "last": "go`; const fixJson = untruncateJson.default; const json = fixJson(str); console.log(json);
about 4 years ago · Santiago Trujillo Denunciar

0

Creo que puedes analizar datos solo cuando arreglaste la estructura

ejemplo:

 const result = [ { name: "john", gender: "male", }, { name: "doe",

Puede corregir los datos agregando algunos corchetes faltantes

 result += ` gender: "male" } ] `
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda