selenium做网页自动化
1.目前采用的调用百度API识别验证码,准确率还行,但反馈速度不高,有没有更好的方案2.流程:
a.时钟元素消失,自动点“确定”
b.循环判断验证码是否存在
c.如果验证码存在,循环结束,调用百度API识别,填写验证码,提交
d.如果验证码不存在,则time.sleep(0.2),继续循环
由于确定点完到出现验证码有一个时间间隔,且受服务器压力波动不固定,无法设time.sleep
想通过识别元素是否存在来判断下一步操作,但实操发现判断这里永远失败,不知道代码哪错了,请教大师
#自动过验证
def grab_solt():
browser.find_element_by_xpath('//*[@id="onDiv1"]/div/span/button').click()
print(datetime.datetime.now())
#判断验证码是否出现
#flag = True
##
#while flag:
# #//*[@id="codeShow"]
# if browser.find_element_by_xpath('//*[@id="codeShow"]').is_displayed()== True:
# print("已经出现验证码")
# flag = False
# else:
# print("还未出现验证码")
# #flag = True
# time.sleep(0.2)
可以试试WebdriverWait和Expected_Conditions结合使用 qiuyouzhi 发表于 2021-2-24 16:15
可以试试WebdriverWait和Expected_Conditions结合使用
能具体举个例子吗 angel|sherry 发表于 2021-2-24 16:19
能具体举个例子吗
你可以百度查下用法 WebDriverWait(driver, timeout).until(
expected_conditions.presence_of_element_located((By.ID, img_id)))
页:
[1]