import zipfile import time import threading startTime = time.time() # 判断线程是否需要终止 flag = True def extract(password, file): try: password = str(password) file.extractall(path='.', pwd=password.encode('utf-8')) print("the password is {}".format(password)) nowTime = time.time...
defextract(file,password):ifnot flag:returnfile.extractall(path='.',pwd=''.join(password).encode('utf-8'))defresult(f):exception=f.exception()ifnot exception:# 如果获取不到异常说明破解成功print('密码为:',f.pwd)global flag flag=Falseif__name__=='__main__':# 创建一个标志用于判断密码...
result= zip_file.extract(member=zip_file.namelist()[1], path=".", pwd=password.encode())print(f'Password found: {password}')#print(zip_file.extractall(pwd=password.encode())) # 此方法会阻塞returnresultexceptException as e:print(f"err: {e}")continueelse:returnFalseforlengthinrange(1, ...
复制 importzipfileimporttimeimportthreading startTime=time.time()# 判断线程是否需要终止 flag=True defextract(password,file):try:password=str(password)file.extractall(path='.',pwd=password.encode('utf-8'))print("the password is {}".format(password))nowTime=time.time()print("spend time is {}...
(i) for i in range(65, 91)]# 生成数字+字母的6位数密码password_lst=itertools.permutations(nums + chrs, 6)# 创建文件句柄zfile=zipfile.ZipFile("加密文件.zip", 'r')for pwd in password_lst:if not flag: breakf=pool.submit(extract, zfile, pwd)f.pwd= pwdf.pool= poolf.add_done_call...
这里我们将使用到python的zipfile的模块,编写zip文件口令破解机要从学习 zipfile库的使用方法着手。打开 Python解释器,我们 用help( zipfile)命令进一步了解这个库,并重点看一下 Zip File类中的 extractall方法。这个类和这个方法对我们编程破解有口令保护的Zip文件是很有用的。请注意 extractant(方法用可选参数指定密...
百度各种搜,找到解决方案,记录一下原文在这,解压缩用 ANSI (GBK) 编码密码的 zip 文件,放不了链接,给个截图:复制一下代码:frompathlib importPathimportshutilimportpyzipperdefextract_encrypted_ANSI_zip(zipfile, password, encoding='gbk', create_new_folder=True):zipfile =Path(zipfile)output_dir =...
filepath,zip压缩文件 password,密码 folder,目标目录 遇到的问题 1,中文乱码 网上找到的思路都是使用 extract() 逐个文件解压,这样就可以在此过程中逐个文件修正中文乱码问题。 亲测无效。 有效的思路是: 先用extractall() 一次性解压全部; 再遍历文件夹和文件名,处理中文乱码问题 ...
ZipFile.infolist() 获取zip文档内所有文件的信息,返回一个zipfile.ZipInfo的列表。 ZipFile.namelist() 获取zip文档内所有文件的名称列表。 ZipFile.extract(member[, path[, pwd]]) 将zip文档内的指定文件解压到当前目录。参数member指定要解压的文件名称或对应的ZipInfo对象;参数path指定了解析文件保存的文件夹;...
zfile = zipfile.ZipFile("加密文件.zip",'r') forpwdinpassword_lst: ifnotflag:break f = pool.submit(extract, zfile, pwd) f.pwd = pwd f.pool = pool f.add_done_callback(result) 这个代码有个问题,跑一会儿内存就爆了!原因:ThreadPoolExecutor...