PythonValueError:需要超过1个值才能解包
问题 用户名,密码=line.strip().split(“:”)PythonValueError:需要超过1个值才能解包,python,brute-force,Python,Brute Force,问题 用户名,密码=line.strip().split(“:”) ValueError:需要超过1个值才能解包 这是剧本 print '[+] Bruteforcing against %s with dictionary %s' % (ip, filename) for line in fd.readlines(): username, password = line.strip().split(":") t = threading.Thread(target=attempt
ValueError:需要超过1个值才能解包 这是剧本
print '[+] Bruteforcing against %s with dictionary %s' % (ip, filename)
for line in fd.readlines():
username, password = line.strip().split(":")
t = threading.Thread(target=attempt, args=(ip,username,password))
您正在逐行读取打开的文件,每行都临时存储在一个变量“line”中。然后,在删除每行开头和结尾的所有空格后,您尝试将该行拆分为两部分,一部分是字符“:”之前的左侧部分,另一部分是字符“:”之后的右侧部分,并将其存储到两个变量中“用户名”和“密码”。
这里可能出现错误的原因是,考虑到字符“:”的存在,您试图将该行拆分为两部分。如果该行中不存在字符“:”,会发生什么情况。这可能是导致错误类型的原因 我的建议是,尝试检查行中是否存在字符,如果存在,则尝试拆分行 例如,您可以简单地检查:
if line.find(':')!=-1:
username, password = line.strip().split(":")
您正在读取的文件是否为空?看起来您试图同时为两个变量赋值,但split只返回一个结果问题在于
行中没有: