import os import spacy import gradio as gr from sentence_transformers import SentenceTransformer from sklearn.metrics.pairwise import cosine_similarity import numpy as np import zipfile import shutil # Funzione per estrarre ed esporre i file def extract_zip(file): if not zipfile.is_zipfile(file.name): return "Errore: Il file caricato non รจ uno ZIP valido." # Percorso temporaneo per l'estrazione extraction_dir = "./extracted_files" os.makedirs(extraction_dir, exist_ok=True) # Estrazione del contenuto dello ZIP with zipfile.ZipFile(file.name, 'r') as zip_ref: zip_ref.extractall(extraction_dir) # Sposta i file nella radice del progetto per renderli visibili project_dir = "./" for root, dirs, files in os.walk(extraction_dir): for f in files: source_path = os.path.join(root, f) dest_path = os.path.join(project_dir, f) shutil.move(source_path, dest_path) return "File estratti e copiati nella radice del progetto:\n" + "\n".join(os.listdir(project_dir)) # Interfaccia Gradio interface = gr.Interface( fn=extract_zip, inputs=gr.File(label="Carica il file ZIP"), outputs="text", title="Estrattore ZIP e Copia nella Radice", description="Carica un file ZIP. I file verranno estratti e resi visibili nella radice del progetto." ) # Avvia l'applicazione if __name__ == "__main__": interface.launch()