您的位置:首页 > 其它

手动输入验证码

2017-08-16 15:39 190 查看
from selenium import webdriver
from time import sleep

#登录函数
def login(username,password):
driver.find_element_by_id("loginName").clear()
driver.find_element_by_id("loginName").send_keys(username)
driver.find_element_by_id("password").clear()
driver.find_element_by_id("password").send_keys(password)

driver=webdriver.Chrome();
#打开登录页
driver.get("url")

#判断输入的验证码是否正确或验证码是否超时,如果是则重新输入验证码,直到登录成功
for i in range(20):
try:
#调用登录函数
login("wangfei","1234567")
verifycode=input("请输入验证码:")
#输入验证码
driver.find_element_by_id("identitryCodeValue").send_keys(verifycode)
#点击登录按钮
driver.find_element_by_xpath("//*[@class='login']/div[4]/a").click()
sleep(2)
#判断输入的验证码是否正确或验证码是否超时
if driver.find_element_by_id("errmsg").text=="验证码已过时" or driver.find_element_by_id("errmsg").text=="验证码输入错误":
print("验证码错误或超时!")
print("请重新输入验证码!")
driver.refresh()
continue
else:
break
except Exception:
pass

#sleep(2)
#通过js打开一个新窗口
js='window.open("url");'
driver.execute_script(js)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: