Gli archivi ZIP comprimono e raggruppano più file o cartelle in un contenitore unificato. L’archivio ZIP non solo incapsula file e cartelle, ma conserva anche i loro metadati. Riducono principalmente le dimensioni dei file per l’archiviazione/trasmissione e aggiungono sicurezza tramite la crittografia. Oltre agli strumenti convenzionali di compressione dei file, le applicazioni desktop e Web integrano funzionalità di compressione ed estrazione automatizzate per semplificare attività quali caricamento, download, condivisione e crittografia dei file. Questo articolo presenta un modo semplificato per comprimere file o cartelle e creare archivi ZIP in Python. Inoltre, spiega come creare archivi ZIP crittografati e protetti da password in Python. Quindi approfondiamolo.
- Libreria ZIP Python
- Crea un archivio ZIP usando Python
- Aggiungi più file a un archivio ZIP
- Aggiungi cartelle a un archivio ZIP
- Crea un archivio ZIP protetto da password
- Crittografa l’archivio ZIP con la crittografia AES
- Imposta la modalità di compressione parallela
Libreria ZIP Python
Aspose.ZIP for Python è una libreria potente e versatile che fornisce agli sviluppatori un set completo di strumenti per lavorare con file ZIP nelle applicazioni Python. Con la sua API intuitiva e un’ampia gamma di funzionalità, Aspose.ZIP for Python semplifica la creazione, l’estrazione e la gestione efficiente degli archivi ZIP. È possibile installare la libreria da PyPI utilizzando il seguente comando.
> pip install aspose-zip
Crea un archivio ZIP in Python
Di seguito sono riportati i passaggi per comprimere un file aggiungendolo in un archivio ZIP in Python.
- Innanzitutto, crea un nuovo archivio ZIP utilizzando la classe Archive.
- Quindi, aggiungi il file all’archivio ZIP utilizzando il metodo Archive.createentry().
- Infine, salva l’archivio ZIP utilizzando il metodo Archive.save().
Il seguente esempio di codice mostra come aggiungere un file in un archivio ZIP in Python.
import aspose.zip as az
# Crea e salva l'archivio con un singolo file
with az.Archive() as archive:
# Aggiungi file all'archivio
archive.create_entry("file", "file.txt")
# Crea e salva un archivio zip
archive.save('my_archive.zip')
Aggiungi più file nell’archivio ZIP in Python
Nella sezione precedente, abbiamo dimostrato come inserire un singolo file nell’archivio ZIP. Tuttavia, se hai più di un file, puoi chiamare ripetutamente il metodo Archive.createentry().
Il seguente esempio di codice mostra come inserire più file in un archivio ZIP in Python.
import aspose.zip as az
# Crea e salva un archivio con più file
with az.Archive() as archive:
# Aggiungi il primo file
archive.create_entry("file", "file.txt")
# Aggiungi il secondo file
archive.create_entry("file2", "file2.txt")
# Crea e salva un archivio zip
archive.save('my_archive.zip')
Aggiungi cartelle a un archivio ZIP in Python
Non solo i file ma puoi anche comprimere le cartelle negli archivi ZIP. Per questo, non è necessario aggiungere ogni file nella cartella all’archivio uno per uno. Chiama semplicemente il metodo Archive.createentries(), passa il nome della cartella e il gioco è fatto. Per tua comprensione, di seguito sono riportati i passaggi per archiviare una cartella completa.
- Innanzitutto, crea un nuovo archivio utilizzando la classe Archive.
- Quindi, aggiungi la cartella all’archivio ZIP utilizzando il metodo Archive.createentries(nomecartella).
- Infine, salva l’archivio ZIP utilizzando il metodo Archive.save().
L’esempio di codice seguente mostra come aggiungere una cartella a ZIP in Python.
import aspose.zip as az
# Crea un archivio da una cartella
with az.Archive() as archive:
# Aggiungi la cartella allo zip
archive.create_entries("files")
# Crea e salva un archivio zip
archive.save('my_archive_from_folder.zip')
Crea un ZIP protetto da password in Python
In vari casi, ad esempio quando si condivide l’archivio su Internet, è necessario proteggere il file ZIP con una password. La creazione di un archivio ZIP protetto da password utilizzando Aspose.ZIP for Python è un processo semplice che offre maggiore sicurezza per i file compressi. Vediamo allora come proteggere un archivio ZIP con una password in Python.
- Innanzitutto, crea un oggetto della classe ArchiveEntrySettings e inizializzalo con la password desiderata.
- Quindi, crea un oggetto della classe Archive e inizializzalo con l’oggetto ArchiveEntrySettings che hai creato sopra.
- Successivamente, aggiungi file e cartelle all’archivio ZIP.
- Infine, salva l’archivio ZIP utilizzando il metodo Archive.save().
Il seguente esempio di codice mostra come creare un archivio ZIP protetto da password in Python.
import aspose.zip as az
# Crea le impostazioni dell'archivio e imposta la password
archive_settings = az.saving.ArchiveEntrySettings(None, az.saving.TraditionalEncryptionSettings("password"))
# Crea e salva un archivio con più file
with az.Archive(archive_settings) as archive:
# Aggiungi la cartella allo zip
archive.create_entries("files")
# Crea e salva un archivio zip
archive.save('protected_archive.zip')
Crittografa l’archivio ZIP con la crittografia AES
Nell’esempio precedente, abbiamo applicato le impostazioni tradizionali per proteggere un archivio ZIP con una password. Tuttavia, Aspose.ZIP for Python ti consente di utilizzare la crittografia AES per crittografare i tuoi archivi ZIP. È possibile utilizzare i seguenti metodi di crittografia AES:
- AES128
- AES192
- AES256
Il processo di applicazione della crittografia AES è lo stesso visto nella sezione precedente. L’unica differenza è che ora utilizzerai AesEcryptionSettings invece di TraditionalEncryptionSettings quando definisci le impostazioni di archivio. L’esempio di codice seguente dimostra come applicare la crittografia AES agli archivi ZIP in Python.
import aspose.zip as az
# Crea le impostazioni dell'archivio e imposta la password
archive_settings = az.saving.ArchiveEntrySettings(None, az.saving.AesEcryptionSettings("pass", az.saving.EncryptionMethod.AES128))
# Crea e salva un archivio con più file
with az.Archive(archive_settings) as archive:
# Aggiungi la cartella allo zip
archive.create_entries("files")
# Crea e salva un archivio zip
archive.save('protected_archive.zip')
Imposta la modalità di compressione parallela
Aspose.ZIP for Python consente inoltre di personalizzare il processo di archiviazione ZIP utilizzando le impostazioni di compressione parallela. Questa configurazione indica all’API quando applicare la compressione parallela. Sono disponibili le seguenti modalità di compressione parallela.
- Mai: non comprimere in parallelo.
- Sempre: comprimi in parallelo (attenzione alla memoria insufficiente).
- Auto: decidi se utilizzare o meno la compressione parallela sulle voci. Questa opzione potrebbe comprimere alcune voci solo in parallelo.
Di seguito sono riportati i passaggi per applicare la compressione parallela durante la creazione di un archivio ZIP in Python.
- Innanzitutto, crea un nuovo archivio utilizzando la classe Archive.
- Quindi, aggiungi file o cartelle all’archivio ZIP (come mostrato nelle sezioni precedenti).
- Crea un’istanza della classe ParallelOptions e imposta la proprietà parallelcompressinmemory sul valore ParallelCompressionMode desiderato.
- Crea un’istanza della classe ArchiveSaveOptions.
- Assegna l’oggetto ParallelOptions alla proprietà ArchiveSaveOptions.paralleloptions.
- Infine, salva l’archivio ZIP utilizzando il metodo Archive.save().
L’esempio di codice seguente mostra come applicare la compressione parallela durante la compressione dei file in Python.
# Crea e salva un archivio con più file
import aspose.zip as az
with az.Archive() as archive:
# Aggiungi file/cartelle allo zip
archive.create_entry("file", "file.txt")
archive.create_entry("file2", "file2.txt")
# Crea opzioni per la compressione parallela
parallelOptions = az.saving.ParallelOptions()
parallelOptions.parallel_compress_in_memory = az.saving.ParallelCompressionMode.ALWAYS
# Crea opzioni di salvataggio ZIP
archiveSaveOptions = az.saving.ArchiveSaveOptions()
archiveSaveOptions.parallel_options = parallelOptions
archiveSaveOptions.archive_comment = "Files compressed with parallel compression."
# Crea e salva un archivio zip
archive.save('parallel_compression_archive.zip', archiveSaveOptions)
Ottieni una licenza gratuita
Puoi ottenere una licenza temporanea gratuita e comprimere i file in un archivio ZIP senza limitazioni di valutazione.
Libreria ZIP Python - Risorse
Puoi esplorare di più sulla nostra libreria ZIP Python utilizzando le seguenti risorse:
Crea archivi ZIP online
Prova la nostra applicazione gratuita per la compressione di file, basata su Aspose.ZIP for Python.
Conclusione
In conclusione, Aspose.ZIP for Python offre una soluzione robusta e versatile per creare e gestire archivi ZIP senza sforzo. Grazie al suo set completo di funzionalità, gli sviluppatori possono integrare perfettamente la funzionalità ZIP nelle loro applicazioni Python. Che si tratti di comprimere file, aggiungere crittografia o organizzare strutture di directory complesse, Aspose.ZIP fornisce un toolkit affidabile per semplificare queste attività.
Questo articolo ti ha fornito una guida completa su come creare archivi ZIP in Python. Inoltre, abbiamo spiegato come archiviare più file e cartelle, creare archivi ZIP protetti da password, applicare la crittografia AES e configurare metodi di compressione ZIP paralleli. Puoi integrare facilmente la libreria nelle tue applicazioni Python e utilizzare gli esempi di codice forniti.