Ke zmenšení velikosti souborů a složek pro ukládání nebo přenos se používají různé techniky komprese dat. Dva běžně používané kompresní formáty jsou TAR a ZIP, z nichž každý má své silné stránky a případy použití. Co když ale potřebujete tyto formáty zkombinovat? V tomto blogovém příspěvku prozkoumáme, jak sloučit TAR se ZIP v Python.
- Knihovna Python pro sloučení TAR se ZIP
- Sloučit TAR se ZIP v Python
- Bezplatné online nástroje pro zipování
Knihovna Python pro sloučení TAR se ZIP
Aspose.ZIP for Python je knihovna s bohatými funkcemi, která vám umožňuje pracovat s různými archivními formáty včetně ZIP a TAR. Knihovnu můžete použít k vytváření, přidávání, extrahování a manipulaci s archivy bez námahy. Tuto knihovnu použijeme ke sloučení TAR s archivem ZIP.
Knihovnu si můžete stáhnout nebo ji nainstalovat z PyPI.
> pip install aspose-zip
Proč sloučit TAR se ZIP?
Než se ponoříme do technických detailů, pojďme stručně probrat, proč byste mohli chtít sloučit TAR se ZIP. TAR i ZIP mají své jedinečné výhody:
TAR: TAR je formát archivace souborů běžně používaný v systémech Unix a Linux. Je ideální pro sdružování více souborů a adresářů do jednoho souboru bez komprese. Archivy TAR se často používají pro zálohování a balení souborů pro distribuci.
ZIP: ZIP je široce používaný kompresní formát, který nejen sdružuje soubory a adresáře, ale také je komprimuje, aby se zmenšil úložný prostor a urychlil přenos souborů. ZIP je podporován na více platformách a je kompatibilní s různými archivačními nástroji.
Sloučení TAR se ZIP může být výhodné ve scénářích, kdy chcete zachovat adresářovou strukturu souborů TAR a zároveň získat výhody komprese ZIP.
Sloučit TAR se ZIP v Python
Následují kroky ke sloučení TAR se ZIP v Python.
- Nejprve načtěte TAR pomocí třídy TarArchive.
- Poté načtěte ZIP pomocí třídy Archive.
- Poté procházejte záznamy TAR pomocí kolekce Archive.entries.
- Extrahujte každý záznam z TAR do objektu BytesIO pomocí metody Archive.entries[index].extract(BytesIO).
- Přidejte extrahovanou položku do archivu ZIP pomocí metody Archive.createentry(string, BytesIO).
- Nakonec uložte ZIP archiv pomocí metody Archive.save(string).
Následující ukázka kódu ukazuje, jak sloučit TAR s archivem ZIP v Python.
import aspose.zip as az
from io import BytesIO
# Načíst soubor TAR
with az.tar.TarArchive("source.tar") as source:
# Načíst soubor ZIP
with az.Archive("target.zip") as target:
# Procházejte záznamy TAR a přidejte je do ZIP
for i in range(source.entries.length):
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 ZIP archiv
target.save("merged_tar_zip.zip")
Python ZIP Library – Získejte bezplatnou licenci
Získejte bezplatnou dočasnou licenci a pracujte s několika archivními formáty 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
Použijte naše bezplatné online nástroje pro práci s archivy, které jsou poháněny Aspose.ZIP for Python.
Závěr
Sloučení TAR se ZIP pomocí Aspose.ZIP for Python je přímočarý proces, který vám umožní využít silné stránky obou archivačních formátů. Ať už potřebujete zabalit soubory pro distribuci, vytvořit zálohy nebo jednoduše snížit úložný prostor, Aspose.ZIP zjednoduší úlohu a poskytne vám jemnou kontrolu nad procesem. Můžete snadno postupovat podle pokynů uvedených v tomto příspěvku na blogu a sloučit TAR s archivy ZIP ve svých aplikacích Python.