所以我试图使用python加密目录,我不知道最好的方法是什么。我很容易将文件夹转换为zip文件,但从那里我已经尝试查找如何使用AES加密它,但无法使其工作,我也尝试使用7zip加密来存档文件夹,但是也无法让它工作,所以如果有人有另一个解决方案来加密目录或者可以指出我正确的方向如何使用以前的方法之一将有所帮助。 (如果有任何意义,我会在Windows上)
答案 0 :(得分:0)
我仍然推荐使用7-zip。
假设您要将zip文件夹命名为myzip.zip
Import subprocess
zp = subprocess.call(['7z', 'a', 'your password', '-y', 'myzip.zip'] + ['your file'])
另一种方式:
Import pyminzip
level=4 #level of compression
pyminizip.compress("your file", "myzip.zip", "your password", level)
答案 1 :(得分:0)
通过子进程模块使用7-Zip工作。以下是我遇到的一些问题,必须解决这些问题: 您需要在Popen子进程中指定与cmd变量分开的7zip路径,并使用变量而不是实心字符串构建命令:
appPath="C:\Program Files\\7-Zip"
zApp="7z.exe"
zAction='a'
zPass='-pPASSWORD'
zAnswer='-y'
zDir=directoryToZip
progDir=os.path.join(appPath,zApp)
cmd = [zApp, zAction, zipFileName, zPass, zAnswer, zDir]
subprocess.Popen(cmd, executable=progDir, stderr=subprocess.STDOUT, stdout=subprocess.PIPE)
这将创建一个zip文件(在zipFileName变量中具有名称的位置),包括“directoryToZip”路径中的内容(目录和文件)
必须指定progDir与您作为Open命令的一部分调用的应用程序(这是可执行路径)分开,并且需要将命令字符串构建为变量以处理窗口反斜杠转义设置。