python 写一个word加密
时间: 2023-12-06 16:42:16 浏览: 32
以下是一个简单的 Python 程序,可以使用密码对 Word 文档进行加密和解密:
```python
import docx
from docx.enum.text import WD_ALIGN_PARAGRAPH
def encrypt(filename, password):
# 打开 Word 文档
doc = docx.Document(filename)
# 遍历所有段落
for paragraph in doc.paragraphs:
# 加密每个段落的文本
encrypted_text = ''.join(chr(ord(c) ^ ord(password[i % len(password)])) for i, c in enumerate(paragraph.text))
# 替换原始文本
paragraph.text = encrypted_text
# 保存加密后的文档
doc.save(filename)
def decrypt(filename, password):
# 打开 Word 文档
doc = docx.Document(filename)
# 遍历所有段落
for paragraph in doc.paragraphs:
# 解密每个段落的文本
decrypted_text = ''.join(chr(ord(c) ^ ord(password[i % len(password)])) for i, c in enumerate(paragraph.text))
# 替换原始文本
paragraph.text = decrypted_text
# 保存解密后的文档
doc.save(filename)
# 测试代码
filename = 'test.docx'
password = 'mypassword'
# 加密文档
encrypt(filename, password)
# 解密文档
decrypt(filename, password)
```
在上面的代码中,`encrypt` 函数使用异或运算将每个字符与密码中的字符进行加密,然后将文本替换为加密的文本。`decrypt` 函数使用相同的方法解密文本。在加密和解密过程中,我们使用了 Python 中的 `docx` 模块来读取和写入 Word 文档。
请注意,这只是一个简单的加密算法,可以轻易地被破解。如果需要更高级的安全性,请使用更强大的加密算法。