最近在学习python,下载了个rar压缩包,但是有密码无法打开,本来想在论坛上找个,结果没有,所以自己边搜索百度边写了个rar压缩包密码破解的代码,能运行,但是时间太长才能解开密码,肯定写的不好,大家多多指教。
[Python] 纯文本查看 复制代码 charsw='qwertyuiopasdfghjklzxcvbnm1234567890QWERTYUIOPASDFGHJKLZXCVBNM!@#$%^&*()_+|~}{><?,.;[]'#先创建密码本,把所有的按键敲了一遍
import itertools
l=1#密码的初始长度为1
while l<=6:#被破解的密码最终长度,先使用迭代创建一个密码本
for passwords in itertools.product(charsw, repeat=l):
passwords= ''.join(passwords)
print(passwords)#可以使用pass直接跳过
f = open('C:\\Users\\Richard\\Desktop\\passdict.txt', 'a+')
password = str(passwords)+ '\n'
f.write(password)
f.close()
l+=1
def extractFile(rarFile, password):#使用rarFile库来破解密码
try:
rarFile.extractall(pwd=bytes(password, "utf8"))
print("rar压缩包密码是" + password) # 破解成功
except:
pass # 失败,就跳过
def main():
rarFile = rarfile.RarFile('E:\\柯二.rar')#使用的是绝对路径可以改成rar文件所在地
PwdLists = open('C:\\Users\\Richard\\Desktop\\passdict.txt') # 读入所有密码
for line in PwdLists.readlines(): # 挨个挨个的写入密码
Pwd = line.strip('\n')
guess = extractFile(rarFile, Pwd)
if __name__ == '__main__':
main()
大家多多指教:rar暴力破解python代码
|