问题描述
我正在学习如何使用python BruteForcing访问zip文件。但是当我在第11行的zipF中这样做时,我遇到了一个问题 唯一的例外是:无法分配给函数调用。
import zipfile
zipF = zipfile.ZipFile
zipName = input("File path : ")
passwordFile = open("14MillionPass.txt","r")
for passw in passwordFile.readlines():
ps = str(int(passw))
ps = ps.encode()
try:
with zipF.ZipFile(zipName) as myzip(): #the error is here
myzip.extractAll(pwd = ps)
print("Password found \n -> {0} is {1} password".format(ps,zipName))
break
except:
print("password not found")
预先感谢
解决方法
您不能在break
语句中使用try-catch
。此外,您尝试将功能分配给文件处理程序。您可以使用exit(0)
代替break
try:
with zipfile.ZipFile(zipName) as myzip:
myzip.extractAll(pwd = ps)
print("Password found \n -> {0} is {1} password".format(ps,zipName))
exit(0) # successful exit
except:
print("password not found")
并且您的程序中的缩进符已损坏,也许这是您想要的
import zipfile
zipName = input("File path : ")
passwordFile = open("14MillionPass.txt","r")
for passw in passwordFile.readlines():
ps = str(int(passw))
ps = ps.encode()
try:
with zipfile.ZipFile(zipName) as myzip:
myzip.extractAll(pwd = ps)
print("Password found \n -> {0} is {1} password".format(ps,zipName))
break
except:
print("password not found")