Python Bruteforcing zip文件无法分配给函数调用

问题描述

我正在学习如何使用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")

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...