Python Zip破解脚本有问题

Python Zip破解脚本有问题,python,zip,zipfile,Python,Zip,Zipfile,我遵循了这个脚本的教程,当我运行它时。。。什么都没发生。。。我点击RunModule,它只是跳过一行,等待下一个输入??实际未发生任何签名(即显示测试文件的密码) 看起来您可能正在引用未定义的变量 password = x.strip() 代码中没有x变量。您可能希望使用line作为var 这就是为什么try-except语句不会触发print命令 空文件夹意味着密码工作不正常,文件无法提取。我写我的脚本时遇到了这个问题-当您尝试输入错误的密码时,一个空的存档文件夹将出现在您的目标路径上(即桌

我遵循了这个脚本的教程,当我运行它时。。。什么都没发生。。。我点击RunModule,它只是跳过一行,等待下一个输入??实际未发生任何签名(即显示测试文件的密码)


看起来您可能正在引用未定义的变量

password = x.strip()
代码中没有x变量。您可能希望使用line作为var


这就是为什么try-except语句不会触发print命令

空文件夹意味着密码工作不正常,文件无法提取。我写我的脚本时遇到了这个问题-当您尝试输入错误的密码时,一个空的存档文件夹将出现在您的目标路径上(即桌面上)。 但是,如果密码正确,则可以正确查看内容。所以空文件夹意味着未正确打开,这可能意味着密码错误

建议您需要指定要剥离的内容。如果要剥离空白,请尝试将\n添加为strip()参数,以便剥离(\n)。我认为你的密码是正确的,只是它包含空格,所以你的密码是无效的

编辑-无需指定删除空白。

“如果省略字符或无字符,则删除空白字符。”

第一件事:

  • ,打开文件时,最好对文件对象使用“with”关键字。我会将其应用于单词列表和归档文件。这意味着它们将在不指定“closed”的情况下正确关闭

  • 什么是x?你哪里都没有申报。要浏览列表,请删除这些行,然后创建一个密码,如下所示:

    with open("words.txt", "r") as the_text:
        for entry in the_text.readlines():
        password = entry.strip('\n')
    
  • 这将遍历文本中的每一行,去掉空白(\n),并将生成的单词用作密码

  • 然后您需要将该密码传递到.zip文件。我会使用try/except来引发自定义错误(在本例中没有错误消息),然后继续尝试,直到出现问题

    try:
        with zipfile.ZipFile('arch.zip', 'r') as zf:
            zf.extractall(pwd=password)
            print '[+] Found password = ' + password + '\n'
            exit(0)
    except:
        pass
    
  • 同样,这里我使用“with”打开zip文件并使用变量zf 如果密码匹配并且文件打开,它将打印成功的密码并退出。如果没有出口(0),它将继续尝试匹配密码,即使它找到了正确的密码

    另外要记住的是Python在这方面是垃圾。这很有效,但速度很慢。堆栈上还有很多其他建议的答案,是由比我知识渊博得多的人提供的

    我目前正在学习Python2.7,希望这对我有所帮助。我完成的脚本(测试并使用476k英语单词列表)


    我把x改成了线。。。仍然没有打印它提取文件。。。。只是在我放进去的文件夹中没有任何内容(.txt文档),也没有实际显示您试图写入dictionary.txt的密码?您可能需要从文档中查看zipfile文档。如果要将所有压缩内容写入.txt,则需要zFile.extractall(passFile)dictionary.txt是否为空文件?my.txt dictionary文件有一系列可能的组合。。不,它绝不是空的。。大约有几百或几千种组合。。基本上,我希望脚本使用字典文件中的组合来告诉文件的密码。当您从小开始调试时,调试会容易得多。试着用密码打开zip文件——zipfile.zipfile('arch.zip','r')作为zf:zf.extractall(pwd=password)先让它工作。然后尝试从word文件中打印单词。然后把两者放在一起。否则就很难找到问题。
    with open("words.txt", "r") as the_text:
        for entry in the_text.readlines():
        password = entry.strip('\n')
    
    try:
        with zipfile.ZipFile('arch.zip', 'r') as zf:
            zf.extractall(pwd=password)
            print '[+] Found password = ' + password + '\n'
            exit(0)
    except:
        pass
    
    with open("words.txt", "r") as the_text:
        for entry in the_text.readlines():
            password = entry.strip('\n')
            try:
                with zipfile.ZipFile('arch.zip', 'r') as zf:
                    zf.extractall(pwd=password)
                    print '[+] Found password = ' + password + '\n'
                    exit(0) 
            except:
            pass