在 Python 中合併多個 ZIP 文件

ZIP 檔案是將多個檔案壓縮並存檔到單一容器中的流行方法。但是,有時您需要將多個 ZIP 檔案合併到一個 ZIP 檔案中。這對於組織和管理文件特別有用。因此,在這篇文章中,我們將探討如何在 Python 中將多個 ZIP 檔案合併為一個 ZIP。

用於合併多個 ZIP 檔案的 Python 函式庫

Aspose.ZIP for Python 是一個強大的函式庫,允許開發人員在 Python 應用程式中使用 ZIP 檔案。它提供了廣泛的功能來創建、添加、提取和操作 ZIP 文件內容。我們將使用該程式庫將多個 ZIP 檔案合併到一個 ZIP 檔案中。

您可以下載該程式庫或從PyPI安裝它。

> pip install aspose-zip

在 Python 中合併多個 ZIP 文件

Aspose.ZIP for Python 讓合併多個 ZIP 檔案的任務變得更加簡單。您只需從來源 ZIP 檔案中提取檔案並將其新增至目標 ZIP 即可。讓我們來看看在 Python 中合併 ZIP 檔案所需的步驟。

  • 首先,使用 Archive 類別來載入來源和目標 ZIP 檔案。
  • 然後,使用 Archive.entries 集合循環遍歷來源 ZIP 的條目。
  • 使用 Archive.entries[index].extract(BytesIO) 方法將來源 ZIP 中的每個條目提取到 BytesIO 物件中。
  • 使用 Archive.createentry(string, BytesIO) 方法將擷取的條目新增至目標 ZIP 檔案。
  • 最後,使用 Archive.save(string) 方法儲存目標 ZIP 檔案。

以下程式碼範例展示如何在 Python 中合併兩個 ZIP 檔案。

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")

Python ZIP 庫 - 取得免費許可證

取得免費的臨時許可證 並使用 ZIP 檔案,不受評估限制。

學習資源

使用以下資源了解有關 Python ZIP 庫的更多資訊:

線上 ZIP 工具

探索我們免費的用於處理 ZIP 檔案的線上工具,這些工具由 Aspose.ZIP for Python 提供支援。

結論

在處理大量壓縮檔案時,將多個 ZIP 檔案合併到單一 ZIP 檔案中可能是一個有用的操作。 Aspose.ZIP for Python 讓這項任務變得簡單又有效率。透過遵循本部落格文章中概述的步驟,您可以輕鬆地將多個 ZIP 檔案合併到 Python 中的單一 ZIP 檔案中。只需安裝該程式庫即可輕鬆將 ZIP 檔案合併到您的 Python 應用程式中。

也可以看看