如何在Linux上用Python创建带密码的Excel xlsx文件

0 投票
1 回答
57 浏览
提问于 2025-04-14 18:33

我有一个数据表(dataframe)。

我想把这个数据表写入一个Excel文件,并且在打开这个文件时需要输入密码。

我是在Linux环境下操作的。

我该怎么做呢?

我尝试了一些包,比如msoffcrypto,但它只能解密,加密的功能还在实验阶段,现在不能用。

pywin32和xlings只能在Windows或Mac上使用,所以我也不能用。

我卡住了。请帮帮我。

1 个回答

1

msoffcrypto的加密功能确实被标记为实验性,但在最新版本(v.5.3.1)中,它已经可以使用了。

不过,这个工具是第三方开发的,所以使用时不能保证一定没问题。

命令行界面(CLI):

msoffcrypto-tool -e -p Passw0rd plain.xlsx encrypted.xlsx

Python代码:

import msoffcrypto

file_path = "encrypted.xlsx"
password = "Passw0rd"
decrypted_file_path = "decrypted.xlsx"

with open(file_path, "rb") as encrypted:
    file = msoffcrypto.OfficeFile(encrypted)
    file.load_key(password=password)  # Load the encryption key (password)
    with open(decrypted_file_path, "wb") as decrypted:
        file.decrypt(decrypted)

免责声明:我是msoffcrypto的作者。

撰写回答