Erstellen Sie eine ZIP-Datei in Python

ZIP-Archive komprimieren und bündeln mehrere Dateien oder Ordner in einem einheitlichen Container. Das ZIP-Archiv kapselt nicht nur die Dateien und Ordner, sondern behält auch deren Metadaten bei. Sie reduzieren in erster Linie die Dateigröße für die Speicherung/Übertragung und erhöhen die Sicherheit durch Verschlüsselung. Zusätzlich zu herkömmlichen Dateikomprimierungstools integrieren Desktop und Webanwendungen automatisierte Komprimierungs und Extraktionsfunktionen, um Aufgaben wie das Hochladen, Herunterladen, Teilen und Verschlüsseln von Dateien zu optimieren. Dieser Artikel stellt eine vereinfachte Möglichkeit zum Komprimieren von Dateien oder Ordnern und zum Erstellen von ZIP-Archiven in Python vor. Außerdem erfahren Sie, wie Sie in Python verschlüsselte und passwortgeschützte ZIP-Archive erstellen. Also lasst uns näher darauf eingehen.

Python-ZIP-Bibliothek

Aspose.ZIP for Python ist eine leistungsstarke und vielseitige Bibliothek, die Entwicklern einen umfassenden Satz an Tools für die Arbeit mit ZIP Dateien in Python-Anwendungen bietet. Mit seiner intuitiven API und der breiten Palette an Funktionen erleichtert Aspose.ZIP for Python das effiziente Erstellen, Extrahieren und Verwalten von ZIP-Archiven. Sie können die Bibliothek von PyPI mit dem folgenden Befehl installieren.

> pip install aspose-zip

Erstellen Sie ein ZIP-Archiv in Python

Im Folgenden finden Sie die Schritte zum Komprimieren einer Datei durch Hinzufügen zu einem ZIP-Archiv in Python.

  • Erstellen Sie zunächst ein neues ZIP-Archiv mit der Archive Klasse.
  • Fügen Sie dann die Datei mit der Methode Archive.createentry() zum ZIP-Archiv hinzu.
  • Speichern Sie abschließend das ZIP-Archiv mit der Methode Archive.save().

Das folgende Codebeispiel zeigt, wie man in Python eine Datei zu einem ZIP-Archiv hinzufügt.

import aspose.zip as az

# Erstellen und speichern Sie ein Archiv mit einer einzelnen Datei
with az.Archive() as archive:
    # Datei zum Archiv hinzufügen
    archive.create_entry("file", "file.txt")

    # ZIP-Archiv erstellen und speichern
    archive.save('my_archive.zip')

Fügen Sie in Python mehrere Dateien zum ZIP-Archiv hinzu

Im vorherigen Abschnitt haben wir gezeigt, wie man eine einzelne Datei in das ZIP-Archiv einfügt. Wenn Sie jedoch mehr als eine Datei haben, können Sie die Methode Archive.createentry() wiederholt aufrufen.

Das folgende Codebeispiel zeigt, wie Sie in Python mehrere Dateien in ein ZIP-Archiv einfügen.

import aspose.zip as az

# Erstellen und speichern Sie ein Archiv mit mehreren Dateien
with az.Archive() as archive:
    # Erste Datei hinzufügen
    archive.create_entry("file", "file.txt")

    # Zweite Datei hinzufügen
    archive.create_entry("file2", "file2.txt")

    # ZIP-Archiv erstellen und speichern
    archive.save('my_archive.zip')

Fügen Sie Ordner zu einem ZIP-Archiv in Python hinzu

Sie können nicht nur die Dateien, sondern auch Ordner in die ZIP-Archive komprimieren. Dazu müssen Sie nicht jede Datei im Ordner einzeln zum Archiv hinzufügen. Rufen Sie einfach die Methode Archive.createentries() auf, übergeben Sie den Namen des Ordners und fertig. Zu Ihrem Verständnis finden Sie im Folgenden die Schritte zum Archivieren eines vollständigen Ordners.

  • Erstellen Sie zunächst ein neues Archiv mit der Archive Klasse.
  • Fügen Sie dann mit der Methode Archive.createentries(Ordnername) einen Ordner zum ZIP-Archiv hinzu.
  • Speichern Sie abschließend das ZIP-Archiv mit der Methode Archive.save().

Das folgende Codebeispiel zeigt, wie man in Python einen Ordner zu ZIP hinzufügt.

import aspose.zip as az

# Archiv aus einem Ordner erstellen
with az.Archive() as archive:
    # Ordner zur ZIP-Datei hinzufügen
    archive.create_entries("files")

    # ZIP-Archiv erstellen und speichern
    archive.save('my_archive_from_folder.zip')

Erstellen Sie eine passwortgeschützte ZIP-Datei in Python

In verschiedenen Fällen, beispielsweise beim Teilen des Archivs im Internet, müssen Sie die ZIP-Datei mit einem Passwort schützen. Das Erstellen eines passwortgeschützten ZIP-Archivs mit Aspose.ZIP for Python ist ein unkomplizierter Vorgang, der mehr Sicherheit für Ihre komprimierten Dateien bietet. Sehen wir uns also an, wie man in Python ein ZIP-Archiv mit einem Passwort schützt.

  • Erstellen Sie zunächst ein Objekt der Klasse ArchiveEntrySettings und initialisieren Sie es mit dem gewünschten Passwort.
  • Erstellen Sie dann ein Objekt der Archive Klasse und initialisieren Sie es mit dem oben erstellten ArchiveEntrySettings Objekt.
  • Fügen Sie anschließend Dateien und Ordner zum ZIP-Archiv hinzu.
  • Speichern Sie abschließend das ZIP-Archiv mit der Methode Archive.save().

Das folgende Codebeispiel zeigt, wie man in Python ein passwortgeschütztes ZIP-Archiv erstellt.

import aspose.zip as az

# Erstellen Sie Archiveinstellungen und legen Sie ein Passwort fest
archive_settings = az.saving.ArchiveEntrySettings(None, az.saving.TraditionalEncryptionSettings("password"))

# Erstellen und speichern Sie ein Archiv mit mehreren Dateien
with az.Archive(archive_settings) as archive:        
    # Ordner zur ZIP-Datei hinzufügen
    archive.create_entries("files")

    # ZIP-Archiv erstellen und speichern
    archive.save('protected_archive.zip')

Verschlüsseln Sie das ZIP-Archiv mit AES-Verschlüsselung

Im vorherigen Beispiel haben wir herkömmliche Einstellungen angewendet, um ein ZIP-Archiv mit einem Passwort zu schützen. Mit Aspose.ZIP for Python können Sie jedoch die AES-Verschlüsselung zum Verschlüsseln Ihrer ZIP-Archive verwenden. Sie können die folgenden AES-Verschlüsselungsmethoden verwenden:

  • AES128
  • AES192
  • AES256

Der Prozess der Anwendung der AES-Verschlüsselung ist derselbe, den Sie im vorherigen Abschnitt gesehen haben. Der einzige Unterschied besteht darin, dass Sie beim Definieren der Archiveinstellungen jetzt AesEcryptionSettings anstelle von TraditionalEncryptionSettings verwenden. Das folgende Codebeispiel zeigt, wie Sie die AES-Verschlüsselung auf die ZIP-Archive in Python anwenden.

import aspose.zip as az

# Erstellen Sie Archiveinstellungen und legen Sie ein Passwort fest
archive_settings = az.saving.ArchiveEntrySettings(None, az.saving.AesEcryptionSettings("pass", az.saving.EncryptionMethod.AES128))

# Erstellen und speichern Sie ein Archiv mit mehreren Dateien
with az.Archive(archive_settings) as archive:        
    # Ordner zur ZIP-Datei hinzufügen
    archive.create_entries("files")

    # ZIP-Archiv erstellen und speichern
    archive.save('protected_archive.zip')

Stellen Sie den parallelen Komprimierungsmodus ein

Mit Aspose.ZIP for Python können Sie außerdem den ZIP-Archivierungsprozess mithilfe paralleler Komprimierungseinstellungen anpassen. Diese Konfiguration teilt der API mit, wann die parallele Komprimierung angewendet werden soll. Die folgenden parallelen Komprimierungsmodi sind verfügbar.

  • Niemals – Nicht parallel komprimieren.
  • Immer – Führen Sie eine parallele Komprimierung durch (achten Sie darauf, dass nicht genügend Speicher vorhanden ist).
  • Auto – Entscheiden Sie, ob für die Einträge eine parallele Komprimierung verwendet werden soll oder nicht. Diese Option komprimiert möglicherweise nur einige Einträge parallel.

Im Folgenden finden Sie die Schritte zum Anwenden der parallelen Komprimierung beim Erstellen eines ZIP-Archivs in Python.

  • Erstellen Sie zunächst ein neues Archiv mit der Archive Klasse.
  • Fügen Sie dann Dateien oder Ordner zum ZIP-Archiv hinzu (wie in den vorherigen Abschnitten gezeigt).
  • Erstellen Sie eine Instanz der ParallelOptions Klasse und legen Sie die Eigenschaft parallelcompressinmemory auf den gewünschten ParallelCompressionMode-Wert fest.
  • Erstellen Sie eine Instanz der ArchiveSaveOptions Klasse.
  • Weisen Sie das ParallelOptions Objekt der Eigenschaft ArchiveSaveOptions.paralleloptions zu.
  • Speichern Sie abschließend das ZIP-Archiv mit der Methode Archive.save().

Das folgende Codebeispiel zeigt, wie Sie beim Komprimieren von Dateien in Python eine parallele Komprimierung anwenden.

# Erstellen und speichern Sie ein Archiv mit mehreren Dateien
import aspose.zip as az

with az.Archive() as archive:        
    # Dateien/Ordner zur ZIP-Datei hinzufügen
    archive.create_entry("file", "file.txt")
    archive.create_entry("file2", "file2.txt")

    # Erstellen Sie Optionen für die parallele Komprimierung
    parallelOptions = az.saving.ParallelOptions()
    parallelOptions.parallel_compress_in_memory = az.saving.ParallelCompressionMode.ALWAYS

    # Erstellen Sie ZIP-Speicheroptionen
    archiveSaveOptions = az.saving.ArchiveSaveOptions()

    archiveSaveOptions.parallel_options = parallelOptions
    archiveSaveOptions.archive_comment = "Files compressed with parallel compression."

    # ZIP-Archiv erstellen und speichern
    archive.save('parallel_compression_archive.zip', archiveSaveOptions)

Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz erwerben und Dateien ohne Einschränkungen bei der Evaluierung in ein ZIP-Archiv komprimieren.

Python-ZIP-Bibliothek – Ressourcen

Mithilfe der folgenden Ressourcen können Sie mehr über unsere Python-ZIP-Bibliothek erfahren:

Machen Sie ZIP-Archive online

Probieren Sie unsere kostenlose Anwendung zum Zippen von Dateien aus, die auf Aspose.ZIP for Python basiert.

Abschluss

Zusammenfassend bietet Aspose.ZIP for Python eine robuste und vielseitige Lösung für die mühelose Erstellung und Verwaltung von ZIP-Archiven. Mit seinem umfassenden Funktionsumfang können Entwickler die ZIP funktionalität nahtlos in ihre Python-Anwendungen integrieren. Ob es darum geht, Dateien zu komprimieren, Verschlüsselung hinzuzufügen oder komplexe Verzeichnisstrukturen zu organisieren, Aspose.ZIP bietet ein zuverlässiges Toolkit zur Rationalisierung dieser Aufgaben.

In diesem Artikel finden Sie eine vollständige Anleitung zum Erstellen von ZIP-Archiven in Python. Darüber hinaus haben wir behandelt, wie Sie mehrere Dateien und Ordner archivieren, passwortgeschützte ZIP-Archive erstellen, AES-Verschlüsselung anwenden und parallele ZIP-Komprimierungsmethoden konfigurieren. Sie können die Bibliothek problemlos in Ihre Python-Anwendungen integrieren und die bereitgestellten Codebeispiele verwenden.

Siehe auch