ITPub博客

首页 > 数据库 > 数据库开发技术 > Python读取带密码的excel文件

Python读取带密码的excel文件

原创 数据库开发技术 作者:derekwh 时间:2024-10-13 21:47:12 0 删除 编辑

最近接触到的一个项目要需要读入带密码的excel文件,在网上找了很多方法,有一些方法是错误的,还有些方法比较繁琐。我在本文使用pandas来读取带密码的excel文件。pandas读取带密码的Excel文件,需要借助其他的库,因为pandas本身不支持读取加密的Excel文件。

直接读取带密码的文件(会报错)

现在一个加密文档,密码是123456


import pandas as pd
df1=pd.read_excel('测试加密文档.xlsx')
df1


pandas是无法读取这个加密的excel文件的,需要使用其他库来协助完成读取带密码的excel数据。

使用msoffcrypto来协助读取带密码的excel文件

msoffcrypto

msoffcrypto是一个开源的Python工具,专门用于解密Microsoft Office文档(如 .docx, .xlsx, .pptx 等)中的加密内容。

msoffcrypto安装

pip install msoffcrypto-tool

读取带密码的excel数据

import io
import pandas as pd
import msoffcrypto
passwd = '123456'
decrypted_workbook = io.BytesIO()
with open('测试加密文档.xlsx', 'rb') as file:
    office_file = msoffcrypto.OfficeFile(file)
    office_file.load_key(password=passwd)
    office_file.decrypt(decrypted_workbook)
df = pd.read_excel(decrypted_workbook, sheet_name='文档1')


如果大家还想进一步了解,尝试更多的方法,可以参考以下链接:https://stackoverflow.com/questions/15285068/from-password-protected-excel-file-to-pandas-dataframe


原文作者:Python学习杂记;如有侵权,请联系管理员删除。

上一篇: 常用快捷键汇总
请登录后发表评论 登录
全部评论
央企算法工程师,微信公众号: python数智工坊

注册时间:2021-03-14

  • 博文量
    305
  • 访问量
    162307