Створюйте ZIP‑архіви з паролем за допомогою безкоштовної Python‑бібліотеки

Ведуча відкрита ефективна та безпечна Python‑бібліотека, яка дозволяє розробникам Python створювати ZIP‑файли з паролем та налаштовуваними параметрами стиснення через безкоштовний API.

Що таке бібліотека Pyminizip?

Pyminizip — це потужна, відкрита бібліотека Python, яка дозволяє розробникам програмного забезпечення створювати ZIP‑файли, захищені паролем, з користувацькими рівнями стискання. Побудована як обгортка навколо алгоритму minizip з набору zlib, вона пропонує простий API, ідеальний для початківців, і при цьому забезпечує потужну функціональність для просунутих потреб. Основні можливості включають створення ZIP‑файлів, захищених паролем, стискання кількох файлів або цілих папок, стискання каталогів та налаштування рівнів стискання.

Розроблений Срджаном Михайловичем, цей швидкий і легкий інструмент ідеально підходить для резервного копіювання даних, архівації та хмарних сховищ. Pyminizip підтримує кросплатформенну сумісність з Windows, macOS та Linux і підвищує безпеку завдяки AES-шифруванню конфіденційних файлів. Його просте інтегрування підходить як для базових скриптів, так і для складних графічних інтерфейсів, забезпечуючи гнучкість у роботі з окремими файлами, пакетними операціями та каталогами в різноманітних Python‑додатках.

Previous Next

Початок роботи з Pyminizip

Рекомендований спосіб встановлення Pyminizip — використання pypi.org. Будь ласка, скористайтеся наступною командою для безпроблемної інсталяції.

Встановіть Pyminizip через .NET за допомогою pypi

 $ pip install pyminizip

Клонувати репозиторій Pyminizip з GitHub

git clone https://github.com/smihica/pyminizip.git 
Також можна встановити його вручну; завантажте останні файли релізу безпосередньо з GitHub репозиторію.

Створення ZIP-файлів, захищених паролем, за допомогою Python

Відкрита бібліотека Pyminizip полегшує розробникам програм створювати та керувати ZIP‑файлами, захищеними паролем, у їхніх власних Python‑додатках. Хоча стандартна бібліотека Python пропонує деякі інструменти стиснення, захист паролем відсутній у модулі zipfile. Pyminizip заповнює цей пробіл, дозволяючи користувачам шифрувати свої файли за допомогою стандарту шифрування AES. Наведений нижче приклад показує, як розробники можуть створювати ZIP‑файли, захищені паролем, і встановлювати рівень стиснення у Python‑додатках.

Як створити ZIP‑файл, захищений паролем, у 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.")

Стиснення каталогу за допомогою Python API

Окрім стиснення окремих файлів, бібліотека Pyminizip дозволяє стискати цілі каталоги всього лише кількома рядками коду Python. Ця функція зручна, коли потрібно упакувати кілька файлів разом, особливо для резервного копіювання або розповсюдження. Бібліотека включає всі файли та папки у вказаному каталозі, забезпечуючи захист паролем усього архіву. Ось дуже корисний приклад стиснення каталогу у Python‑додатках.

Як стиснути каталог за допомогою бібліотеки 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.")

Керування рівнем стискання за допомогою Python API

Відкрита бібліотека Pyminizip для Python забезпечує контроль над рівнем стискання, дозволяючи користувачам балансувати між швидкістю стискання та розміром файлу. Нижчий рівень дає швидше стискання з більшими вихідними розмірами, а вищий рівень забезпечує кращу компресію за рахунок швидкості. Така гнучкість робить Pyminizip придатним для різних випадків використання, від швидкого архівування до ефективного зберігання файлів. Ось приклад, який демонструє, як протестувати різні рівні стискання у Python‑додатках.

Як застосовувати різні рівні стискання у 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}")

Інтеграція з Python-додатками

Завдяки простоті та легкості використання, бібліотеку Pyminizip можна легко інтегрувати у Python‑додатки, які потребують стискання файлів. Вона особливо добре підходить для утиліт резервного копіювання, систем безпечного розповсюдження файлів та архівних застосунків, які потребують захисту паролем.

 Українська