這期內容當中小編將會給大家帶來有關使用python怎么破解zip文件密碼,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
1、單線程破解純數字密碼
注意: 不包括數字0開頭的密碼
import zipfile,time,sys
start_time = time.time()
def extract():
zfile = zipfile.ZipFile('IdonKnow.zip')#讀取壓縮包,如果用必要可以加上'r'
for num in range(1,99999,1):
try:
pwd = str(num)
zfile.extractall(path='.',pwd=pwd.encode('utf-8'))
print ("當前壓縮密碼為:",pwd)
end_time = time.time()
print ('單線程破解壓縮包花了%s秒'%(end_time-start_time))
sys.exit(0)
except Exception as e:
pass
if __name__=="__main__":
extract()破解結果:

2、多線程破解純數字密碼
注意: 不包括數字0開頭的密碼
import zipfile,time,threading
start_time = time.time()
flag = True # 用于判斷線程是否需要終止,為True時程序執行
def extract(password, file):
try:
password = str(password)
file.extractall(path='.', pwd=password.encode('utf-8'))
print ("當前壓縮密碼為:",password)
end_time = time.time()
print ('多線程破解壓縮包花了%s秒'%(end_time-start_time))
global flag
flag = False#成功解壓其余線程終止
except Exception as e:
pass
def main():
zfile = zipfile.ZipFile("test.zip", 'r')
for number in range(1, 99999,1):
if flag:
thr1 = threading.Thread(target=extract, args=(number, zfile))
thr2 = threading.Thread(target=extract, args=(number, zfile))
thr1.start()
thr2.start()
thr1.join()
thr2.join()
if __name__ == '__main__':
main()破解結果:

提示: 多線程對數字型的運算沒有多大幫助
3、破解英文+數字型的密碼
import random,zipfile,time,sys
class MyIter():
cset = 'abcdefghijklmnopqrstuvwxyz0123456789'
def __init__(self,min,max):#迭代器實現初始方法,傳入參數
if min < max:
self.minlen = min
self.maxlen = max
else:
self.ninlen = max
self.maxlen = min
def __iter__(self):#直接返回slef實列對象
return self
def __next__(self):#通過不斷地輪循,生成密碼
rec = ''
for i in range(0,random.randrange(self.minlen,self.maxlen+1)):
rec += random.choice(MyIter.cset)
return rec
def extract():
start_time = time.time()
zfile = zipfile.ZipFile('test1.zip','r')
for password in MyIter(1,4):#隨機迭代出1~4位數的密碼,在不明確位數的時候做相應的調整
if zfile:
try:
zfile.extractall(path='.',pwd=str(password).encode('utf-8'))
print ("當前壓縮密碼為:",password)
end_time = time.time()
print ('當前破解壓縮包花了%s秒'%(end_time-start_time))
sys.exit(0)
except Exception as e:
print ('pass密碼:',password)
pass
if __name__=="__main__":
extract()破解結果:

1、云計算,典型應用OpenStack。2、WEB前端開發,眾多大型網站均為Python開發。3.人工智能應用,基于大數據分析和深度學習而發展出來的人工智能本質上已經無法離開python。4、系統運維工程項目,自動化運維的標配就是python+Django/flask。5、金融理財分析,量化交易,金融分析。6、大數據分析。
上述就是小編為大家分享的使用python怎么破解zip文件密碼了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。