利用python对zip压缩文件进行密码破解

在日常工作生活中,可能会遇到压缩文件后忘记解压密码的情况,也许你大概知道密码构成及位数,一个一个手动输入的试密码显然很麻烦,那么利用程序自动测试密码就非常的优雅了。
以下为破解zip压缩文件密码的原理
1,新建一个zip压缩文件(破解测试.zip),设置密码为1111
利用python对zip压缩文件进行密码破解_第1张图片
2,创建一个txt文件(密码字典.txt),保存可能的密码
利用python对zip压缩文件进行密码破解_第2张图片
3,编写python代码

import zipfile
import threading

global i
i = 0

def extractfile(zfile, password):
    try:
        zfile.extractall(pwd = bytes(password, "utf8" ))
        print("文件解压密码为: ", password)
        return password
    except:
        global i
        i = i + 1
        print("密码错误第%s次" % i)

def main():
    zfile = zipfile.ZipFile(r'C:\破解测试.zip')
    passfile = open(r'C:\密码字典.txt')
    for line in passfile.readlines():
        Password = line.strip('\n')
        t = threading.Thread(target=extractfile, args=(zfile, Password))
        t.start()
        t.join()

if __name__ == "__main__":
    main()

4,在cmd命令行运行结果
利用python对zip压缩文件进行密码破解_第3张图片
5,问题
在IDE用代码不能得出正确的运行结果,然而在cmd命令行中却能正确运行
玄学编程

你可能感兴趣的:(python)