首页 > 解决方案 > 如何在 Python3.7 中提取受密码保护(我知道密码)的 7zip 存档?

问题描述

我正在尝试创建一个可以打开密码加密的 zip、rar 和 7z 档案的程序。

该程序生成一个包含 n 个可能密码的文本文件,并将正确的密码添加到文本文件的末尾。目的是查看基于 n 次尝试获得正确密码需要多长时间。

这是我当前的代码片段,它可以正常处理 .zip 和 .rar 档案,我只是还没有找到一个模块可以让我为 .7z 做类似的事情

def zip_hacker(file_path):
    passwords = open('pwds.txt', 'r')
    with pyzipper.AESZipFile(file_path) as file:
        for line in passwords:
            try:
                file.pwd = line
                file.extractall()
            except RuntimeError:
                pass


def rar_hacker(file_path):
    passwords = open('pwds.txt', 'r')
    rarfile.UNRAR_TOOL = 'unrar'
    file = rarfile.RarFile(file_path)
    for line in passwords:
        try:
            file.pwd = line
            file.extractall(pwd=str(line))
        except RuntimeError:
            pass

标签: python-3.x7zip

解决方案


推荐阅读