File size: 1,270 Bytes
1023226
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import streamlit as st
import os
import zipfile
from spacy2 import classifica_e_sposta_documenti

st.title('Categorizzazione Documenti')

uploaded_file = st.file_uploader("Carica un file ZIP contenente i documenti", type="zip")

if uploaded_file is not None:
    # Salva il file ZIP caricato in una directory temporanea
    with open("temp.zip", "wb") as f:
        f.write(uploaded_file.getbuffer())

    # Estrai il file ZIP
    with zipfile.ZipFile("temp.zip", 'r') as zip_ref:
        zip_ref.extractall("temp")

    # Elabora ogni file nella directory estratta
    for file_name in os.listdir("temp"):
        classifica_e_sposta_documenti("temp", file_name)

    # Ricomprimi i file processati in un nuovo file ZIP
    with zipfile.ZipFile('processed.zip', 'w') as zipf:
        for root, dirs, files in os.walk("temp"):
            for file in files:
                zipf.write(os.path.join(root, file), os.path.relpath(os.path.join(root, file), "temp"))

    # Fornisci il file ZIP per il download
    with open('processed.zip', 'rb') as f:
        st.download_button('Scarica File Processati', f, file_name='processed.zip')

# Pulisci i file temporanei
if st.button('Pulisci'):
    os.remove("temp.zip")
    os.remove("processed.zip")
    shutil.rmtree("temp")