用python 写个压缩并设置加密文件程序
时间: 2023-12-20 07:03:46 浏览: 173
当然,我可以帮你编写一个用Python编写的压缩并设置加密文件的程序。这里我使用了Python标准库中的zipfile和cryptography模块来实现压缩和加密功能。下面是一个示例代码:
```python
import zipfile
from cryptography.fernet import Fernet
def compress_and_encrypt(source_folder, output_file, password):
# 创建一个zip文件对象
zip_file = zipfile.ZipFile(output_file, 'w', zipfile.ZIP_DEFLATED)
# 遍历源文件夹,将文件添加到zip文件中
for root, _, files in os.walk(source_folder):
for file in files:
file_path = os.path.join(root, file)
zip_file.write(file_path, os.path.relpath(file_path, source_folder))
# 关闭zip文件
zip_file.close()
# 使用密码加密zip文件
with open(output_file, 'rb') as file:
data = file.read()
fernet = Fernet(password)
encrypted_data = fernet.encrypt(data)
# 将加密后的数据写入新的文件
with open(output_file, 'wb') as file:
file.write(encrypted_data)
# 示例用法
source_folder = '/path/to/source/folder'
output_file = '/path/to/output/file.zip'
password = b'your_password'
compress_and_encrypt(source_folder, output_file, password)
```
在上面的示例代码中,你需要替换`source_folder`为要压缩和加密的源文件夹路径,`output_file`为输出的压缩并加密后的文件路径,`password`为设置的加密密码。请确保已经安装了`zipfile`和`cryptography`模块,可以使用`pip install zipfile cryptography`命令进行安装。
这个程序将会将源文件夹中的所有文件压缩为一个zip文件,并使用给定的密码进行加密。
阅读全文