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

167
Vistas
Importe el archivo comprimido desde la solicitud http, extraiga los archivos csv y guárdelos como una matriz de objetos javascript

Me pregunto cómo obtener datos comprimidos de una URL ( https://developers.google.com/transit/gtfs/examples/sample-feed.zip ) y convertir cada archivo csv en un enlace Javascript Array of Objects.

Por ejemplo, de las rutas.txt, quiero obtener:

 routes = [ { route_id: 'AB' agency_id: 'DTA' route_short_name: '10' route_long_name: 'Airport - Bullfrog' route_desc: null route_type: 3 route_url: null route_color: null route_text_color: null }, { route_id: 'BFC' agency_id: 'DTA' route_short_name: '20' route_long_name: 'Bullfrog - Furnace Creek Resort' route_desc: null route_type: 3 route_url: null route_color: null route_text_color: null } ... ]

Todas las operaciones deben realizarse directamente en el navegador.

Primero, traté de usar Zip.js, pero creo que no sé cómo controlar el uso de promesas.

 let GTFS_URL = `http://sjc.infobus.engdb.com.br/infoponto/google_transit.zip` const GTFS_ZIP = new zip.ZipReader(new zip.HttpReader(GTFS_URL)) const entries = await GTFS_ZIP.getEntries() console.log(entries) if (entries.length) { // get first entry content as text by using a TextWriter const text = await entries[0].getData( // writer new zip.TextWriter(), // options { onprogress: (index, max) => { // onprogress callback } } ); // text contains the entry data as a String console.log(text); } // close the ZipReader await reader.close(); } )

SyntaxError no detectado: await solo es válido en funciones asíncronas y los cuerpos de módulos de nivel superior

Luego, probé la solución JSzip

 let GTFS_URL = `https://developers.google.com/transit/gtfs/examples/sample-feed.zip` var zip = new JSZip(); zip.loadAsync(GTFS_URL) .then(function (GTFS_URL) { console.log(GTFS_URL) alert("OK") }, function () { alert("Not a valid zip file") });

Vi muchas preguntas similares aquí en stackoverflow, pero no pude hacer que ninguna de estas funcionara de la manera que necesito.

about 4 years ago · Juan Pablo Isaza
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