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 # Funzione per estrarre ed elencare i file def extract_zip(file): if not zipfile.is_zipfile(file.name): return "Errore: Il file caricato non รจ uno ZIP valido." # Percorso per salvare i file estratti 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) # Elenco dei file estratti extracted_files = [] for root, dirs, files in os.walk(extraction_dir): for f in files: extracted_files.append(os.path.join(root, f)) # Ritorna la lista dei file con i relativi percorsi return f"File estratti nella directory '{extraction_dir}':\n" + "\n".join(extracted_files) # Interfaccia Gradio interface = gr.Interface( fn=extract_zip, inputs=gr.File(label="Carica il file ZIP"), outputs="text", title="Estrattore ZIP", description="Carica un file ZIP. I file verranno estratti e mostrati nel risultato." ) # Avvia l'applicazione if __name__ == "__main__": interface.launch()