Xóa tệp trong kho lưu trữ ZIP bằng Python

Kho lưu trữ ZIP thường được sử dụng để nén và lưu trữ nhiều tệp và thư mục. Mặc dù việc tạo và giải nén các kho lưu trữ ZIP là một tác vụ phổ biến nhưng đôi khi bạn có thể cần xóa các tệp hoặc thư mục cụ thể khỏi kho lưu trữ ZIP hiện có. Python cung cấp nhiều thư viện khác nhau để làm việc với các kho lưu trữ ZIP và một thư viện mạnh mẽ là Aspose.ZIP for Python. Vì vậy, hãy tìm hiểu cách xóa tệp khỏi kho lưu trữ ZIP bằng Python.

Thư viện Python để xóa tệp trong kho lưu trữ ZIP

Aspose.ZIP for Python là một thư viện giàu tính năng để làm việc với các kho lưu trữ ZIP. Nó cung cấp những cách đơn giản và hiệu quả để tạo, thao tác và trích xuất các tệp và thư mục từ kho lưu trữ ZIP bằng Python. Chúng tôi sẽ sử dụng thư viện này để xóa các tệp khỏi kho lưu trữ ZIP.

Bạn có thể tải xuống thư viện hoặc cài đặt nó từ PyPI.

> pip install aspose-zip

Xóa tệp trong kho lưu trữ ZIP bằng Python

Bạn có thể truy cập và xóa các tệp khỏi kho lưu trữ ZIP theo hai cách: theo tên hoặc theo chỉ mục. Xóa tệp theo tên rất hữu ích khi bạn biết chính xác tên của mục nhập tệp trong kho lưu trữ ZIP. Hoặc bạn cần xóa tất cả các tệp có chứa một từ hoặc cụm từ cụ thể trong tên của chúng. Mặt khác, việc xóa tệp theo chỉ mục được sử dụng khi bạn biết chính xác thứ tự của các tệp trong kho lưu trữ ZIP.

Vì vậy, chúng ta hãy xem xét cả hai cách một cách chi tiết.

Xóa tệp khỏi ZIP theo tên

Để xóa tệp theo tên, trước tiên bạn cần lọc các tệp khớp/chứa từ/cụm từ bạn cung cấp. Sau khi có danh sách các tệp cần xóa, bạn có thể xóa từng tệp khỏi kho lưu trữ ZIP. Sau đây là các bước để xóa tệp khỏi kho lưu trữ ZIP bằng Python.

  • Đầu tiên, tải tệp ZIP bằng lớp Lưu trữ.
  • Sau đó, lặp qua các tệp trong kho lưu trữ ZIP.
  • Lọc các tập tin/thư mục cần thiết và thêm chúng vào danh sách.
  • Xóa từng mục trong danh sách đã lọc bằng phương thức Archive.deleteentry(ArchiveEntry).
  • Cuối cùng, lưu kho lưu trữ ZIP đã cập nhật bằng phương thức Archive.save().

Đoạn mã sau đây cho biết cách xóa tệp trong kho lưu trữ ZIP bằng Python.

import aspose.zip as az

# Tải kho lưu trữ ZIP
with az.Archive("my_archive.zip") as archive:
    # Danh sách giữ các tập tin sẽ bị xóa
    entriesToDelete = []
    
    # Lặp lại các mục ZIP
   for entry in archive.entries:
        # Thêm tập tin/thư mục vào danh sách
        if "2" in entry.name.lower():
            entriesToDelete.append(entry)
    
    # Xóa tất cả các mục được liệt kê
   for entry in entriesToDelete:
        archive.delete_entry(entry)
    
    # Lưu kho lưu trữ ZIP đã cập nhật
    archive.save("updated-archive.zip")

Xóa tệp trong ZIP theo chỉ mục

Sau đây là các bước để xóa tệp khỏi kho lưu trữ ZIP bằng chỉ mục của nó.

  • Đầu tiên, tải tệp ZIP bằng lớp Lưu trữ.
  • Sau đó, xóa mục nhập bắt buộc khỏi ZIP bằng phương thức Archive.deleteentry(index).
  • Cuối cùng, lưu kho lưu trữ ZIP đã cập nhật bằng phương thức Archive.save().

Đoạn mã dưới đây cho biết cách xóa tệp khỏi kho lưu trữ ZIP theo chỉ mục.

import aspose.zip as az

# Tải kho lưu trữ ZIP
with az.Archive("my_archive.zip") as archive:
    
    # Xóa mục ở chỉ mục 0
    archive.delete_entry(0)

    # Lưu kho lưu trữ ZIP đã cập nhật
    archive.save("updated-archive.zip")

Thư viện ZIP Python - Nhận giấy phép miễn phí

Bạn có thể xóa các tệp trong kho lưu trữ ZIP mà không bị giới hạn đánh giá bằng cách nhận giấy phép tạm thời miễn phí.

Tài nguyên học tập

Tìm hiểu thêm về thư viện ZIP Python của chúng tôi bằng cách sử dụng các tài nguyên được cung cấp bên dưới:

Công cụ ZIP trực tuyến

Chúng tôi cũng đã phát triển một số công cụ trực tuyến hữu ích để làm việc với kho lưu trữ ZIP. Những công cụ này hoàn toàn miễn phí và được cung cấp bởi Aspose.ZIP for Python.

Phần kết luận

Trong bài đăng trên blog này, chúng tôi đã khám phá cách xóa tệp khỏi kho lưu trữ ZIP bằng Python. Chúng tôi đã đề cập đến cách xóa tệp khỏi kho lưu trữ ZIP theo tên hoặc theo chỉ mục. Cho dù bạn cần xóa các tệp không mong muốn khỏi kho lưu trữ ZIP hiện có hay thực hiện các tác vụ khác liên quan đến ZIP, Aspose.ZIP for Python đều có thể đáp ứng cho bạn. Chỉ cần cài đặt thư viện và làm phong phú thêm ứng dụng Python của bạn bằng các tính năng lưu trữ ZIP nâng cao.

Xem thêm