如何创建一个密码加密的zip文件?
如何用Python代码创建一个密码加密的压缩文件?我可以使用一些可以通过apt-get
安装的工具,在命令行上操作。
5 个回答
5
6
提取文件其实很简单,你只需要用到zipfile.ZipFile.setpassword()这个功能,它是在Python 2.6版本中引入的。不过,标准的Python库并不支持创建加密的zip文件。
市面上有一些商业库可以让Python支持创建加密和需要密码的zip文件。如果你想使用免费的工具,那就需要用到标准的zip
命令行工具。
zip -e -Ppassword filename.zip fileA fileB ...
36
要使用开源的 7-Zip
工具创建一个加密的压缩文件(命名为 'myarchive.zip'
),可以按照以下步骤操作:
rc = subprocess.call(['7z', 'a', '-pP4$$W0rd', '-y', 'myarchive.zip'] +
['first_file.txt', 'second.file'])
首先,安装 7-Zip,输入:
$ sudo apt-get install p7zip-full
如果你想手动解压(以证明它和其他压缩工具的兼容性),可以输入:
$ unzip myarchive.zip
然后在提示框中输入 P4$$W0rd
作为密码。
或者在 Python 2.6 及以上版本中也可以这样做:
>>> zipfile.ZipFile('myarchive.zip').extractall(pwd='P4$$W0rd')