Crear archivos ZIP protegidos con contraseña mediante biblioteca Python gratuita
Principal biblioteca Python de código abierto, eficiente y segura, que permite a los desarrolladores Python crear archivos ZIP protegidos con contraseña con configuraciones de compresión personalizadas mediante una API gratuita.
¿Qué es la biblioteca Pyminizip?
Pyminizip es una potente biblioteca de Python de código abierto que permite a los desarrolladores de software crear archivos ZIP protegidos con contraseña y con niveles de compresión personalizados. Construida como una capa alrededor del algoritmo minizip de la suite zlib, ofrece una API sencilla ideal para principiantes, al tiempo que brinda una funcionalidad robusta para necesidades avanzadas. Las características clave incluyen la creación de archivos ZIP protegidos con contraseña, la compresión de múltiples archivos o carpetas completas, la compresión de directorios y la configuración ajustable de la compresión.
Desarrollado por Srdjan Mihajlovic, esta herramienta rápida y ligera es perfecta para copias de seguridad de datos, archivado y aplicaciones de almacenamiento en la nube. Pyminizip admite compatibilidad multiplataforma en Windows, macOS y Linux y mejora la seguridad con cifrado AES para archivos confidenciales. Su integración sencilla se adapta a todo, desde scripts básicos hasta interfaces gráficas complejas, ofreciendo flexibilidad para manejar archivos individuales, operaciones por lotes y directorios dentro de diversas aplicaciones Python.
Comenzando con Pyminizip
La forma recomendada de instalar Pyminizip es usando pypi.org. Por favor, use el siguiente comando para una instalación sin problemas.
Instalar Pyminizip vía .NET a través de pypi
$ pip install pyminizipClonar el repositorio de Pyminizip desde GitHub
git clone https://github.com/smihica/pyminizip.git
También es posible instalarlo manualmente; descargue los archivos de la última versión directamente del repositorio GitHub.Creación de ZIP protegido con contraseña mediante Python
La biblioteca de código abierto Pyminizip facilita a los desarrolladores de software crear y gestionar archivos ZIP protegidos con contraseña dentro de sus propias aplicaciones Python. Mientras que la biblioteca estándar de Python ofrece algunas herramientas de compresión, la protección con contraseña falta en el módulo zipfile. Pyminizip llena este vacío al permitir a los usuarios cifrar sus archivos usando el estándar de cifrado AES. El siguiente ejemplo muestra cómo los desarrolladores pueden crear archivos ZIP protegidos con contraseña y establecer el nivel de compresión dentro de aplicaciones Python.
¿Cómo crear un archivo ZIP protegido con contraseña dentro de aplicaciones 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.")
Comprimir directorio mediante la API de Python
Más allá de comprimir archivos individuales, la biblioteca Pyminizip permite comprimir directorios completos con solo un par de líneas de código Python. Esta función es útil cuando se necesitan empaquetar varios archivos juntos, especialmente para copias de seguridad o propósitos de distribución. La biblioteca incluirá todos los archivos y carpetas del directorio especificado, permitiendo la protección con contraseña en todo el archivo. Aquí hay un ejemplo muy útil para comprimir un directorio dentro de aplicaciones Python.
¿Cómo comprimir un directorio mediante la biblioteca 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.")
Controlar el nivel de compresión mediante la API de Python
La biblioteca de Python de código abierto Pyminizip ofrece control sobre el nivel de compresión, permitiendo a los usuarios equilibrar la velocidad de compresión y el tamaño del archivo. Un nivel más bajo resulta en una compresión más rápida con tamaños de salida mayores, mientras que un nivel más alto brinda una mejor compresión a costa de la velocidad. Esta flexibilidad hace que Pyminizip sea adaptable a diversos casos de uso, desde archivado rápido hasta almacenamiento de archivos eficiente. A continuación se muestra un ejemplo que demuestra cómo probar diferentes niveles de compresión dentro de aplicaciones Python.
¿Cómo aplicar diferentes niveles de compresión dentro de aplicaciones 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}")
Integración con aplicaciones Python
Dada su simplicidad y facilidad de uso, la biblioteca Pyminizip puede integrarse fácilmente en aplicaciones Python que requieran compresión de archivos. Funciona particularmente bien con utilidades de copia de seguridad, sistemas de distribución segura de archivos y aplicaciones de archivado que necesitan protección con contraseña.