1. Produkty
  2.   Kompresja
  3.   Python
  4.   Pyminizip
 
  

Twórz archiwa ZIP chronione hasłem przy użyciu darmowej biblioteki Python

Wiodąca otwartoźródłowa, wydajna i bezpieczna biblioteka Python, która umożliwia programistom Pythona tworzenie plików ZIP chronionych hasłem z niestandardowymi ustawieniami kompresji za pomocą darmowego API.

Czym jest biblioteka Pyminizip?

Pyminizip to potężna, otwarto‑źródłowa biblioteka Pythona, która umożliwia programistom tworzenie plików ZIP chronionych hasłem z niestandardowymi poziomami kompresji. Zbudowana jako nakładka na algorytm minizip z zestawu zlib, oferuje prosty interfejs API idealny dla początkujących, jednocześnie zapewniając solidną funkcjonalność dla zaawansowanych potrzeb. Kluczowe funkcje obejmują tworzenie plików ZIP chronionych hasłem, kompresję wielu plików lub całych folderów, kompresję katalogów oraz regulowane ustawienia kompresji.

Stworzony przez Srdjana Mihajlovica, to szybkie i lekkie narzędzie jest idealne do tworzenia kopii zapasowych danych, archiwizacji i zastosowań w chmurze. Pyminizip obsługuje kompatybilność wieloplatformową na systemach Windows, macOS i Linux oraz zwiększa bezpieczeństwo dzięki szyfrowaniu AES dla poufnych plików. Jego prosta integracja pasuje zarówno do podstawowych skryptów, jak i złożonych interfejsów graficznych, zapewniając elastyczność w obsłudze pojedynczych plików, operacji wsadowych i katalogów w różnorodnych aplikacjach Pythona.

Previous Next

Rozpoczęcie pracy z Pyminizip

Zalecanym sposobem instalacji Pyminizip jest użycie pypi.org. Proszę użyć następującego polecenia, aby przeprowadzić płynną instalację.

Zainstaluj Pyminizip przez .NET z PyPI

 $ pip install pyminizip

Sklonuj repozytorium Pyminizip z GitHub

git clone https://github.com/smihica/pyminizip.git 
Można również zainstalować go ręcznie; pobierz najnowsze pliki wydania bezpośrednio z repozytorium GitHub.

Tworzenie chronionych hasłem archiwów ZIP przy użyciu Pythona

Biblioteka open source Pyminizip ułatwia programistom tworzenie i zarządzanie plikami ZIP chronionymi hasłem w ich własnych aplikacjach Pythona. Choć standardowa biblioteka Pythona oferuje niektóre narzędzia kompresji, brak jest ochrony hasłem w module zipfile. Pyminizip wypełnia tę lukę, umożliwiając użytkownikom szyfrowanie plików przy użyciu standardu szyfrowania AES. Poniższy przykład pokazuje, jak programiści mogą tworzyć pliki ZIP chronione hasłem i ustawiać poziom kompresji w aplikacjach Pythona.

Jak utworzyć plik ZIP chroniony hasłem w aplikacjach Python?

import pyminizip

# Define file paths and password
input_file = "sample.txt"  # file to zip
output_file = "sample.zip"  # output zip file name
password = "securepassword"
compression_level = 5  # range 1-9, where 1 is fastest and 9 is maximum compression

# Create password-protected zip file
pyminizip.compress(input_file, None, output_file, password, compression_level)
print(f"{output_file} created with password protection.")

Kompresowanie katalogu za pomocą API Pythona

Poza kompresją pojedynczych plików, biblioteka Pyminizip umożliwia kompresję całych katalogów przy użyciu zaledwie kilku linii kodu Pythona. Ta funkcja jest przydatna, gdy wiele plików musi być spakowanych razem, szczególnie w celach tworzenia kopii zapasowych lub dystrybucji. Biblioteka uwzględni wszystkie pliki i foldery w określonym katalogu, umożliwiając ochronę hasłem całego archiwum. Oto bardzo przydatny przykład kompresji katalogu w aplikacjach Pythona.

Jak skompresować katalog przy użyciu biblioteki Python?

import pyminizip
import os

def compress_directory(directory_path, output_file, password, compression_level):
    for root, _, files in os.walk(directory_path):
        for file in files:
            file_path = os.path.join(root, file)
            arcname = os.path.relpath(file_path, directory_path)
            pyminizip.compress(file_path, arcname, output_file, password, compression_level)

# Usage
directory_path = "my_folder"
output_file = "my_folder.zip"
password = "mypassword"
compression_level = 5
compress_directory(directory_path, output_file, password, compression_level)
print(f"Directory '{directory_path}' compressed into '{output_file}' with password protection.")

Kontrola poziomu kompresji za pomocą API Pythona

Biblioteka open source Pyminizip w języku Python zapewnia kontrolę nad poziomem kompresji, pozwalając użytkownikom na balansowanie między szybkością kompresji a rozmiarem pliku. Niższy poziom skutkuje szybszą kompresją przy większych rozmiarach wyjściowych, natomiast wyższy poziom zapewnia lepszą kompresję kosztem szybkości. Ta elastyczność sprawia, że Pyminizip jest dostosowywalny do różnych zastosowań, od szybkiego archiwizowania po efektywne przechowywanie plików. Poniżej znajduje się przykład, który demonstruje, jak testować różne poziomy kompresji w aplikacjach Python.

Jak zastosować różne poziomy kompresji w aplikacjach Python?

import pyminizip

input_file = "example.txt"
password = "test123"

for level in range(1, 10):
    output_file = f"example_level_{level}.zip"
    pyminizip.compress(input_file, None, output_file, password, level)
    print(f"Created {output_file} with compression level {level}")

Integracja z aplikacjami Pythona

Biorąc pod uwagę jego prostotę i łatwość użycia, biblioteka Pyminizip może być łatwo zintegrowana z aplikacjami Python wymagającymi kompresji plików. Działa szczególnie dobrze z narzędziami do tworzenia kopii zapasowych, systemami bezpiecznej dystrybucji plików oraz aplikacjami archiwizacyjnymi, które potrzebują ochrony hasłem.

 Polski