Есть код по взлому архивов zip, выдает все время одно и тоже ПОМОГИТЕ
import zipfile
class menu():
def start(library):
print("-----Brutforce-----")
print("1.Add Archive")
print("2.Show Archives")
print("3.Delete Achives")
print("4.Hack Archives")
a = int(input())
if a == 1:
b = input()
arch = Archive(f"{b}.zip","TEST")
library.archive.append(arch)
elif a == 2:
def showarchive(self):
library.showarchives()
elif a == 3:
def Format():
b=("")
elif a == 4:
library = Library(Brutforce("dictionary.txt"))
arch = Archive(f"{a}.zip","TEST")
library.archive.append(arch)
library.showarchive()
library.hackall()
library.showarchives()
archive.path = b
else:
print("Вы ничего не выбрали!")
class Archive:
def __init__(self, path, description):
self.path = path
self.description = description
self.password = None
def printer(self, library):
print("Содержимое: " + self.path + "\nОписание:" + self.description + "\nПароль:" + self.password)
class Brutforce:
def __init__(self, dictionary):
self.dictionary = dictionary
def hack(self, archive):
zip_file = zipfile.ZipFile(zipfilename)
password = None
f = open(dictionary, 'r')
for line in f.readlines():
password = line.strip('\n')
try:
zip_file.extractall(pwd=password.encode())
print("..................")
print("Result: " + password)
f.close()
return(True, password)
except:
print(password)
f. close()
return (False, None)
class Library:
def __init__(self, brutforce):
self.brutforce = brutforce
self.archive = []
def showarchive(self):
for archive in self.arhives:
archive.printer()
print("")
def hackall(self):
for achive in archives:
if archive.password == None:
res = self.brutforce.hack(arhive.path)
if res[0] == True:
archive.password = res[1]
def main():
library = Library(Brutforce("dictionary.txt"))
menu.start(library)
if __name__ == '__main__':
main()
Все ошибки в файле.