Pandas 打开有密码的Excel
安装包
pip isntall msoffcrypto-tool
msoffcrypto库的简单介绍
msoffcrypto提供了对Microsoft Office文件进行加密和解密的功能。它支持对Word、Excel和PowerPoint文件进行加密和解密操作。
msoffcrypto的原理是利用Microsoft Office文件的加密算法对文件进行加密和解密。它能够解密使用密码进行保护的Office文件,并将解密后的内容存储在内存或其他文件流中。
代码实现
import os
import pandas as pd
import msoffcrypto
# pd读取加密的文件
def read_decrypt_file(file_path, password):
file_temp = io.BytesIO()
with open(file_path, "rb") as f:
file = msoffcrypto.OfficeFile(f)
# 判断是否有密码
if file.is_encrypted():
file.load_key(password)
file.decrypt(file_temp)
else:
file_temp = file_path
# 读取文件
# df = pd.ExcelFile(file_temp)
df = pd.read_excel(file_temp)
return df
if __name__ == '__main__':
file_path = "你自己的文件路径"
password = "123"
df = read_decrypt_file(file_path, password)
print(df)