利用python给excel加密
前段时间分发的数据是以excel形式给到不同人员,要求给出去的excel加密,单个收到加密太慢,因此利用python来批量加密。主要使用python的win32库。
Python win32 是一个为了与 Microsoft Windows 操作系统进行交互而创建的库。它提供了许多功能和接口,允许我们使用 Python 脚本来访问 Windows 的底层功能。这个库提供了一系列的模块,可以让我们使用 Python 脚本来进行诸如文件操作、注册表操作、窗口管理、进程和线程控制、服务管理等各种 Windows 操作。
Python win32 库包含了以下主要模块:
win32api:提供了访问 Windows API 的函数和常量;
win32gui:用于创建和管理 Windows 窗口,以及处理用户界面事件;
win32con:包含了 Windows API 的常量;
win32com:用于与 COM(Component Object Model)对象进行交互,可以访问并操作许多 Windows 应用程序和组件;
win32com.client:提供了与 COM 对象进行交互的高级接口。
利用python来批量加密excel主要步骤如下:
第一步 安装win32库
pip install pywin32
第二步 利用win32com库操作office,加密excel
import win32com.client
# excel 加密函数
def pwd_xlsx(old_filename,new_filename,pwd_str,pw_str=''):
xcl = win32com.client.Dispatch("Excel.Application")
# pw_str为打开密码, 若无 访问密码, 则设为 ''
wb = xcl.Workbooks.Open(old_filename, False, False, None, pw_str)
# 关闭显示告警对话框
xcl.DisplayAlerts = False
# 保存时可设置访问密码.
wb.SaveAs(new_filename, None, pwd_str, '')
xcl.Quit()
filename="F:\\pyhton\\test.xlsx"
# 三个参数 : 待加密文件 加密后名称 密码
pwd_xlsx(filename,filename, '1111')
注意:操作的时候记得关闭excel,不然会报错