Downloader de datos¶
Script el cual comprime todos los datos de jupyter para poderlos descargar en ZIP
Solucion al problema de no poder exportar los datos de Jupyter de Unizar
In [4]:
import os
import zipfile
import datetime
def zip_folders():
# Obtiene el directorio actual
current_dir = os.getcwd()
# Carpeta para ignorar
ignore_folder = "exports"
# Lista de carpetas y archivos en el directorio actual, ignorando las carpetas ocultas y la carpeta de exportación
folders = [folder for folder in os.listdir(current_dir)
if os.path.isdir(os.path.join(current_dir, folder))
and not folder.startswith('.')
and folder != ignore_folder]
# Crear carpeta 'exports' si no existe
export_folder = os.path.join(current_dir, "exports")
os.makedirs(export_folder, exist_ok=True)
# Nombre para el archivo ZIP
current_time = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S") #Almacenamos segun fecha
zip_filename = f"jupyter-export-{current_time}.zip"
# Ruta completa para el archivo ZIP
zip_filepath = os.path.join(export_folder, zip_filename)
# Crear un nuevo archivo ZIP
with zipfile.ZipFile(zip_filepath, 'w', zipfile.ZIP_DEFLATED) as zipf:
# Iterar sobre cada carpeta y agregarla al archivo ZIP
for folder in folders:
folder_path = os.path.join(current_dir, folder)
# Agregar la carpeta y sus archivos al archivo ZIP
for root, dirs, files in os.walk(folder_path):
for file in files:
file_path = os.path.join(root, file)
zipf.write(file_path, os.path.relpath(file_path, current_dir))
print(f"Todas las carpetas y archivos han sido comprimidos en {zip_filename}")
if __name__ == "__main__":
zip_folders()
Todas las carpetas y archivos han sido comprimidos en jupyter-export-2024-03-18-20-50-20.zip
In [ ]:
Espero que os sirva de utilidad.
ResponderEliminar