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

790
Vistas
pandas. Cómo leer un archivo de Excel desde un archivo ZIP

Tengo un archivo .zip con filename.xlsx dentro y quiero analizar la hoja de Excel línea por línea.

¿Cómo pasar correctamente el nombre de archivo a pandas.read_excel en este caso?

Lo intenté:

 import zipfile import pandas myzip=zipfile.ZipFile(filename.zip) for fname in myzip.namelist(): with myzip.open(fname) as from_archive: with pandas.read_excel(from_archive) as fin: for line in fin: ....

pero no parece funcionar, y el resultado fue:

 AttributeError: __exit__
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Puede extraer su archivo zip en una variable en la memoria y analizarlo usando io.BytesIO :

 import io from zipfile import ZipFile import pandas as pd def read_zip(zip_fn, extract_fn=None): zf = ZipFile(zip_fn) if extract_fn: return zf.read(extract_fn) else: return {name:zf.read(name) for name in zf.namelist()}

Uso:

 df = pd.read_excel(io.BytesIO(read_zip(r'C:\download\test.xlsx.zip', 'test.xlsx')))

Alternativamente, puede extraer archivos del archivo zip al disco y analizarlos como archivos normales.

PD: hay toneladas de ejemplos en StackOverflow, que muestran cómo explotar un archivo zip...

over 4 years ago · Santiago Trujillo Denunciar

0

Usando el archivo zip

 import zipfile archive = zipfile.ZipFile('filename.zip', 'r') xlfile = archive.open('filename.xlsx') df = pd.read_excel(xlfile)
over 4 years ago · Santiago Trujillo Denunciar

0

forma sencilla es:

df = pd.read_csv('ruta al archivo', compresión='zip').

si lo necesita, puede agregar atr adicional: codificación = 'windows-1251' y sep = ''

over 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