Sloučit více souborů ZIP v Python

Soubory ZIP jsou oblíbeným způsobem komprimace a archivace více souborů do jednoho kontejneru. Jsou však chvíle, kdy potřebujete sloučit více souborů ZIP do jednoho archivu ZIP. To může být užitečné zejména pro organizaci a správu souborů. V tomto příspěvku na blogu tedy prozkoumáme, jak sloučit více souborů ZIP do jednoho ZIP v Python.

Knihovna Python pro sloučení více souborů ZIP

Aspose.ZIP for Python je robustní knihovna, která umožňuje vývojářům pracovat s archivy ZIP v aplikacích Python. Poskytuje širokou škálu funkcí pro vytváření, přidávání, extrahování a manipulaci s obsahem souborů ZIP. Tuto knihovnu použijeme ke sloučení více souborů ZIP do jednoho archivu ZIP.

Knihovnu si můžete stáhnout nebo ji nainstalovat z PyPI.

> pip install aspose-zip

Sloučit více souborů ZIP v Python

Aspose.ZIP for Python usnadňuje slučování více archivů ZIP. Stačí pouze extrahovat soubory ze zdrojového ZIP archivu a přidat je do cílového ZIP. Pojďme se podívat na kroky potřebné ke sloučení souborů ZIP v Python.

  • Nejprve načtěte zdrojové a cílové soubory ZIP pomocí třídy Archive.
  • Poté procházejte záznamy zdrojového ZIP pomocí kolekce Archive.entries.
  • Extrahujte každý záznam ze zdrojového ZIP do objektu BytesIO pomocí metody Archive.entries[index].extract(BytesIO).
  • Přidejte extrahovanou položku do cílového archivu ZIP pomocí metody Archive.createentry(string, BytesIO).
  • Nakonec uložte cílový ZIP archiv pomocí metody Archive.save(string).

Následující ukázka kódu ukazuje, jak sloučit dva soubory ZIP v Python.

import aspose.zip as az
from io import BytesIO

# Načtěte zdrojové a cílové soubory ZIP
with az.Archive("source.zip") as source:
    with az.Archive("target.zip") as target:
        
        # Procházejte záznamy ZIP
       for i in range(source.entries.length):
          
            # Přidejte záznam do cílového ZIP
            if not source.entries[i].is_directory:
                ms = BytesIO()
                source.entries[i].extract(ms)
                target.create_entry(source.entries[i].name, ms)
            else:
                target.create_entry(source.entries[i].name + "/", None)
        
        # Uložit cílový ZIP
        target.save("merged.zip")

Python ZIP Library – Získejte bezplatnou licenci

Získejte bezplatnou dočasnou licenci a pracujte s archivy ZIP bez omezení hodnocení.

Výukové zdroje

Zjistěte více o naší knihovně Python ZIP pomocí zdrojů uvedených níže:

Online nástroje ZIP

Prozkoumejte naše bezplatné online nástroje pro práci s archivy ZIP, které využívají Aspose.ZIP for Python.

Závěr

Sloučení více souborů ZIP do jednoho archivu ZIP může být užitečná operace při práci s velkým počtem komprimovaných souborů. Aspose.ZIP for Python dělá tento úkol přímočarým a efektivním. Podle kroků uvedených v tomto příspěvku na blogu můžete snadno sloučit více souborů ZIP do jednoho archivu ZIP v Python. Stačí nainstalovat knihovnu a bez námahy sloučit archivy ZIP ve svých aplikacích Python.

Viz také