如何循环使用Mechanize的Python脚本?

时间:2017-06-16 21:18:50

标签: python html forms loops mechanize

我正在尝试循环这个python脚本,所以我可以无限次填写表单。当我尝试循环它时,它只从网站上获得一封确认的电子邮件。我的代码出了什么问题?

import mechanize


#This bot allows for autofill on the ShoezGallery Raffle.
br = mechanize.Browser()

response = br.open("https://www.bstnstore.com/yeezy-boost-350-v2-zebra-raffle")

br.addheaders = [("User-agent","Mozilla/5.0")] 

url = "https://www.bstnstore.com/yeezy-boost-350-v2-zebra-raffle"

br.select_form(nr=2)

emailAddress = 'my email'

br['EMAIL'] = emailAddress #DONT CHANGE

br['MMERGE3'] = emailAddress #DONT CHANGE

br.form.find_control(name="MMERGE4", kind="list").value = ["US 9.5 (EU 43 1/3)"]

br['FNAME'] = 'Julio' 

br['LNAME'] = 'my last name'

br['MMERGE6'] = 'my phone number'

br['MMERGE5[addr1]'] = 'my address'

br['MMERGE5[addr2]']  = 'Floor 1'

br['MMERGE5[city]'] = 'my town'

br['MMERGE5[state]'] = 'my state'

br['MMERGE5[zip]'] = 'my zip'

br.form.find_control(name="MMERGE5[country]", kind="list").value = ["164"]


br.submit()


for i in range(1,1000000):
    print 'Signed Up'

1 个答案:

答案 0 :(得分:0)

您想要重复的代码需要在for循环中。如果你真的希望代码无限重复,你也可以考虑将它放在while循环中:

import mechanize

while True: #(The code will repeat forever)
    #This bot allows for autofill on the ShoezGallery Raffle.
    br = mechanize.Browser()

    response = br.open("https://www.bstnstore.com/yeezy-boost-350-v2-zebra-raffle")

    br.addheaders = [("User-agent","Mozilla/5.0")] 

    url = "https://www.bstnstore.com/yeezy-boost-350-v2-zebra-raffle"

    br.select_form(nr=2)

    emailAddress = 'my email'

    br['EMAIL'] = emailAddress #DONT CHANGE

    br['MMERGE3'] = emailAddress #DONT CHANGE

    br.form.find_control(name="MMERGE4", kind="list").value = ["US 9.5 (EU 43 1/3)"]

    br['FNAME'] = 'Julio' 

    br['LNAME'] = 'my last name'

    br['MMERGE6'] = 'my phone number'

    br['MMERGE5[addr1]'] = 'my address'

    br['MMERGE5[addr2]']  = 'Floor 1'

    br['MMERGE5[city]'] = 'my town'

    br['MMERGE5[state]'] = 'my state'

    br['MMERGE5[zip]'] = 'my zip'

    br.form.find_control(name="MMERGE5[country]", kind="list").value = ["164"]


    br.submit()
    print 'Signed Up'