Python - 密码保护 Zip 文件夹

Posted

技术标签:

【中文标题】Python - 密码保护 Zip 文件夹【英文标题】:Python - Password Protecting Zip folders 【发布时间】:2015-04-18 15:04:20 【问题描述】:

脚本当前在当前工作目录中创建一个 zip 文件夹,并使用当前登录的用户文件(例如“Documents and Settings\Owner*”)填充它。但是,我想用密码保护 zip 文件夹; 我在这里查看了可行的回复,但它们要么是旧帖子,要么未经发布问题的人确认。

那么,如何使用密码保护已经在 python 中创建的 zip 文件?

我当前的代码;

import os, zipfile, getpass, sys

try:
    user= getpass.getuser()
    print " [*] Creating a zip-folder in current working directory...\r"
    zf = zipfile.ZipFile(user + ".zip", "w", zipfile.ZIP_DEFLATED)
    sys.__stdout__
    directory = "C:\\Documents and Settings\\Owner"
    print " [*] Created successfully..."
    print" [*] Attempting to copy files...\r"
    for dirname, subdirs, files in os.walk(directory):
        sys.stdout.write(" [*] Now copying files...\r")
        if "Local Settings" in files:
                continue
        zf.write(dirname)
        for filename in files:
            if "NTUSER" in filename:
                continue
            elif "ntuser" in filename:
                continue
            elif user + ".zip" in filename:
                continue
            elif "UsrClass" in filename:
                continue
            zf.write(os.path.join(dirname, filename))
    print ' [*] Completed copying files to zip-file...'
except IOError as e:
    print ' [-] ' + e
except KeyboardInterrupt:
    print ' [-] Cancelling current operation'
    sys.exit(0)
zf.close()

【问题讨论】:

来自 python 文档:docs.python.org/2/library/… 我以为是用来提取密码的,不是用来创建密码的? 【参考方案1】:

来自docs:

[此模块]支持解密ZIP压缩包中的加密文件,但目前无法创建加密文件

很遗憾,您无法使用 zipfile 模块加密 zip。

【讨论】:

嗯,好的,谢谢。在 Windows XP 上使用 Python 加密 zip 文件夹时,您有什么建议? 您可能必须使用一些外部工具,例如 here 中描述的 7zip。我找不到任何能够创建加密 zip 文件的免费 python 库。

以上是关于Python - 密码保护 Zip 文件夹的主要内容,如果未能解决你的问题,请参考以下文章

Python 破解带密码保护的Zip文件

python zip压缩文件并设置密码

python zip文件密码爆破

原来Python破解受密码保护的zip文件这么简单,不保证一定成功

原来Python破解受密码保护的zip文件这么简单,不保证一定成功

python [Python]使用密码创建zip存档文件