zipfile
zipfile模块基本使用
#使用 zipfile 压缩文件
import zipfile
#创建一个zip文件对象,压缩是需要把mode改为‘w’
zfile=zipfile.ZipFile("test.zip","w")
#将文件写入zip文件中,即将文件压缩
zfile.write(r"../test.py")
#将zip文件对象关闭
zfile.close()
#####################
#使用 zipfile 解压文件
import zipfile
#解压
zfile=zipfile.ZipFile("../test.zip","r")
zfile.extractall()
准备一个带密码的zip格式的压缩文件,准备一个password,开始爆破。
源码如下:
import zipfile
# 创建passwd列表存入password.txt每一个密码
passwd = []
# 打开password.txt进行读取,编码'utf-8'
passwordFile = open('password.txt', 'r', encoding='utf-8')
# 把password.txt每一项存入pwdlines中
pwdlines = passwordFile.readlines()
zfile = zipfile.ZipFile('./data.zip') # 填入压缩文件名,这里是test.zip
# 遍历pwdlines列表去除'\n',并存入passwd列表中
for line in pwdlines:
passwd.append(line.strip())
pass
# 定义变量i为1,循环初始值
i = 1
# 遍历,把passwd列表中的每一项取出进行密码爆破~~
for pwd in passwd:
try:
# 如果爆破成功,返回信息并停止
zfile.extractall('./', pwd=pwd.encode())
print('破解成功,密码是:{}'.format(pwd))
break
except:
# 如果单次爆破失败,则一直尝试,直到破解成功或字典耗尽结束
print('正在尝试第{}次破解'.format(i))
i += 1
pass