Proteger archivos de Excel en Python

MS Excel proporciona una forma rápida y fácil de almacenar datos pequeños y de gran tamaño en forma de filas y columnas. Además, le permite realizar otras operaciones, como formato de datos, cálculos, análisis de datos, gráficos y tablas, etc. Dado que vale la pena proteger los datos, MS Excel le permite proteger con contraseña los archivos de Excel. En este artículo, aprenderá cómo proteger con contraseña los archivos de Excel en Python. Además, demostraremos cómo proteger una hoja de cálculo de Excel específica y desproteger archivos de Excel de forma dinámica en Python.

Biblioteca de Python para proteger archivos de Excel - Descarga gratuita

Aspose.Cells for Python es una biblioteca poderosa y rica en funciones, que está diseñada para crear, editar y convertir archivos de Excel desde las aplicaciones de Python. Usaremos esta biblioteca para proteger y desproteger libros o hojas de cálculo de Excel. Puede descargar su paquete o instalarlo desde PyPI usando el siguiente comando.

pip install aspose-cells

Pasos simples para proteger archivos de Excel en Python

Primero, echemos un vistazo a los tipos de protección que ofrece Aspose.Cells for Python para proteger los archivos de Excel.

  • TODOS - El usuario no puede modificar nada
  • CONTENIDO - El usuario no puede ingresar datos
  • OBJETOS - El usuario no puede modificar objetos de dibujo
  • ESCENARIOS - El usuario no puede modificar escenarios guardados
  • ESTRUCTURA - El usuario no puede modificar la estructura guardada
  • WINDOWS - El usuario no puede modificar las ventanas guardadas
  • NINGUNO - Sin protección

Puede aplicar cualquiera de los tipos de protección mencionados anteriormente a sus archivos de Excel. Los siguientes son los pasos simples para proteger un archivo de Excel con Aspose.Cells for Python.

  • Cargue el archivo de Excel desde la ubicación de disco deseada.
  • Aplique la protección requerida en el archivo y configure la contraseña.
  • Guarde el archivo protegido.

Proteger con contraseña los archivos de Excel en Python

Ahora, echemos un vistazo a cómo proteger con contraseña un archivo de Excel usando el código de Python. Los siguientes son los pasos para hacerlo.

  • Cargue el archivo de Excel usando la clase Workbook.
  • Utilice el método Workbook.protect(ProtectionType, password) para proteger el archivo de Excel con contraseña.
  • Guarde el archivo protegido usando el método Workbook.save(fileName).

El siguiente ejemplo de código muestra cómo proteger con contraseña un archivo de Excel en Python.

# Cargar archivo de Excel
workbook = Workbook("workbook.xlsx")

# Proteger el libro de trabajo con el tipo de protección deseado
workbook.protect(ProtectionType.STRUCTURE, "password")

# Guardar archivo de Excel protegido
workbook.save("protected-excel-file.xlsx")

Desproteger archivos de Excel en Python

También puede desproteger un archivo de Excel protegido con bastante facilidad. Simplemente cargue el archivo de Excel, desprotejalo con la contraseña y guarde el archivo actualizado en la ubicación deseada.

Los siguientes son los pasos para desproteger un archivo de Excel protegido con contraseña en Python.

  • Cargue el archivo de Excel usando la clase Workbook.
  • Utilice el método Workbook.unprotect(password) para desproteger el archivo de Excel.
  • Guarde el archivo de Excel desprotegido con el método Workbook.save(fileName).

El siguiente ejemplo de código muestra cómo desproteger un archivo de Excel en Python.

# Cargar archivo de Excel protegido
workbook = Workbook("workbook.xlsx")

# Desproteger libro de trabajo con contraseña
workbook.unprotect("password")

# Guardar archivo de Excel desprotegido
workbook.save("unprotected-excel-file.xlsx")

Python: aplicar protección con contraseña a una hoja de cálculo de Excel

También puede aplicar protección a un archivo de Excel a nivel de hoja de cálculo. Los siguientes son los pasos para proteger una hoja de cálculo de Excel específica con contraseña en Python.

  • Cargue el archivo de Excel usando la clase Workbook.
  • Obtenga la referencia de la hoja de trabajo deseada en un objeto usando el método Workbook.getWorksheets().get(index).
  • Aplique el tipo de protección deseado mediante el método Worksheet.protect(ProtectionType).
  • Establezca la contraseña usando el método Worksheet.getProtection().setPassword(password).
  • Guarde el archivo de Excel con el método Workbook.save(fileName).

El siguiente ejemplo de código muestra cómo proteger una hoja de cálculo de Excel en Python.

# Cargar archivo de Excel
workbook = Workbook("workbook.xlsx")

# Obtenga la referencia de la hoja de trabajo deseada
sheet = workbook.getWorksheets().get(0)

# Proteger el contenido de la hoja de trabajo
sheet.protect(ProtectionType.CONTENTS)

# Proteger la hoja de trabajo con contraseña
sheet.getProtection().setPassword('password')

# Guardar archivo de Excel actualizado
workbook.save("protected-excel-file.xlsx")

Desproteger hojas de cálculo de Excel en Python

Puede desproteger una hoja de Excel protegida de una manera bastante similar. La única diferencia es que utilizará el método Worksheet.unprotect (contraseña).

El siguiente ejemplo de código muestra cómo desproteger una hoja de cálculo de Excel en Python.

# Cargar archivo de Excel
workbook = Workbook("workbook.xlsx")

# Obtenga la referencia de la hoja de trabajo deseada
sheet = workbook.getWorksheets().get(0)

# Desproteger el contenido de la hoja de trabajo
sheet.unprotect("password")

# Guardar archivo de Excel actualizado
workbook.save("unprotected-excel-file.xlsx")

Biblioteca de Python para proteger archivos de Excel con contraseña: obtenga una licencia gratuita

Puede obtener una licencia temporal gratuita para usar Aspose.Cells for Python sin limitaciones de evaluación.

Conclusión

En este artículo, ha aprendido cómo proteger con contraseña y desproteger archivos de Excel en Python. Además, ha visto cómo proteger y desproteger una hoja de trabajo en particular en un archivo de Excel. También puede explorar más sobre la API de automatización de Python Excel usando documentación. En caso de que tenga alguna consulta, contáctenos a través de nuestro foro.

Ver también