Об’єднайте кілька ZIP-файлів у Python

Файли ZIP – це популярний спосіб стиснення та архівування кількох файлів в один контейнер. Однак бувають випадки, коли потрібно об’єднати кілька ZIP-файлів в один ZIP-архів. Це може бути особливо корисним для організації ваших файлів і керування ними. Тож у цій публікації блогу ми розглянемо, як об’єднати кілька ZIP-файлів в один ZIP у Python.

Бібліотека Python для об’єднання кількох ZIP-файлів

Aspose.ZIP for Python — це надійна бібліотека, яка дозволяє розробникам працювати з ZIP-архівами в програмах Python. Він надає широкий спектр функцій для створення, додавання, видобування та обробки вмісту ZIP-файлу. Ми використовуватимемо цю бібліотеку для об’єднання кількох ZIP-файлів в один ZIP-архів.

Ви можете завантажити бібліотеку або встановити її з PyPI.

> pip install aspose-zip

Об’єднайте кілька ZIP-файлів у Python

Aspose.ZIP for Python спрощує об’єднання кількох ZIP-архівів. Вам потрібно лише розпакувати файли з вихідного архіву ZIP і додати їх до цільового ZIP. Давайте розглянемо кроки, необхідні для об’єднання ZIP-файлів у Python.

  • Спочатку завантажте вихідний і цільовий ZIP-файли за допомогою класу Archive.
  • Потім перегляньте записи вихідного ZIP-архіву за допомогою колекції Archive.entries.
  • Витягніть кожен запис із вихідного ZIP в об’єкт BytesIO за допомогою методу Archive.entries[index].extract(BytesIO).
  • Додайте витягнутий запис до цільового ZIP-архіву за допомогою методу Archive.createentry(string, BytesIO).
  • Нарешті, збережіть цільовий ZIP-архів за допомогою методу Archive.save(string).

У наведеному нижче прикладі коду показано, як об’єднати два ZIP-файли в Python.

import aspose.zip as az
from io import BytesIO

# Завантажте вихідні та цільові ZIP-файли
with az.Archive("source.zip") as source:
    with az.Archive("target.zip") as target:
        
        # Переглядайте записи ZIP
       for i in range(source.entries.length):
          
            # Додайте запис до цільового 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)
        
        # Зберегти цільовий ZIP
        target.save("merged.zip")

ZIP-бібліотека Python - отримайте безкоштовну ліцензію

Отримайте безкоштовну тимчасову ліцензію та працюйте з ZIP-архівами без обмежень оцінки.

Навчальні ресурси

Дізнайтеся більше про нашу бібліотеку Python ZIP, використовуючи наведені нижче ресурси:

Онлайн-інструменти ZIP

Ознайомтеся з нашими безкоштовними онлайн-інструментами для роботи з архівами ZIP, які створені на основі Aspose.ZIP for Python.

Висновок

Об’єднання кількох ZIP-файлів в один ZIP-архів може бути корисною операцією, коли ви маєте справу з великою кількістю стиснутих файлів. Aspose.ZIP for Python робить це завдання простим і ефективним. Дотримуючись кроків, описаних у цій публікації блогу, ви можете легко об’єднати кілька ZIP-файлів в один ZIP-архів на Python. Просто встановіть бібліотеку та легко об’єднайте ZIP-архіви у своїх програмах Python.

Дивись також