Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 2, 2021 16:15:21

MrAeral
Зарегистрирован: 2021-06-02
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

ПОМОГИТЕ ПОЖАЛЙСТА СРОЧНО!!!

Есть код по взлому архивов 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()
Все ошибки в файле.

Отредактировано MrAeral (Июнь 2, 2021 16:15:57)

Прикреплённый файлы:
attachment 1.png (18,0 KБ)

Офлайн

#2 Июнь 2, 2021 17:47:30

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

ПОМОГИТЕ ПОЖАЛЙСТА СРОЧНО!!!

 def  __init__(self, brutforce):
...
    self.archive = []
...
    for archive in self.arhives: 
self.ar(с???)hiveS ? точно?



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Отредактировано PEHDOM (Июнь 2, 2021 17:49:28)

Офлайн

#3 Июнь 2, 2021 18:09:14

MrAeral
Зарегистрирован: 2021-06-02
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

ПОМОГИТЕ ПОЖАЛЙСТА СРОЧНО!!!

Да я исправил
правда теперь нарисовались другие проблемы

 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())
          b = input()
               
          if a == 1:
               b = input()
               menu.start(library)
 
          elif a == 2:
               print(f"{b}")
                    
                         
          elif a == 3:
               b=("")
          
          
          elif a == 4:
               library = Library(Brutforce("dictionary.txt"))
               arch = Archive(f"{b}.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.archives = []
 
 
 
    def showarchive(self):
        for archive in self.arhive:
             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()

Отредактировано MrAeral (Июнь 2, 2021 18:59:52)

Офлайн

#4 Июнь 2, 2021 19:00:30

MrAeral
Зарегистрирован: 2021-06-02
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

ПОМОГИТЕ ПОЖАЛЙСТА СРОЧНО!!!

Вот фото

Прикреплённый файлы:
attachment 2.png (10,9 KБ)

Офлайн

#5 Июнь 2, 2021 20:29:49

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

ПОМОГИТЕ ПОЖАЛЙСТА СРОЧНО!!!

MrAeral
Да я исправил
Пфф, а читать вы не умеете?
 class Library:
    def  __init__(self, brutforce):
        self.archives = []
.....
    library.archive.append(arch)
найдите различия между словами “archives” и “archive”.



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Отредактировано PEHDOM (Июнь 2, 2021 20:30:22)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version