抓取弹出对话框信息,困挠了我很久,我百度了很久,一直没有找到我想要的内容。最近学习到了。
有两种方法:
1、driver.switch_to.alert.text
2、result = EC.alert_is_present()(driver).text
这个要导入from selenium.webdriver.support import expected_conditions as EC
其他操作方法:
确认弹窗:driver.switch_to.alert.accept()
取消按钮:driver.switch_to.alert.dismiss()
输入值:driver.switch_to.alert.send_keys(“hello”)
如果弹出框是iframe:driver.switch_to.frame('Openreg') #可以是id或name
例:
driver=webdriver.Chrome('D:/4/chromedriver.exe')
driver.get('http://localhost')
ele=driver.find_element_by_id('reg').click()
ele=driver.switch_to.frame('Openreg')
ele=driver.find_element_by_xpath('//*[@name="username"]')
ele.send_keys('ddd')
driver.find_element_by_id('send').click()#id="send"
sleep(0.5)
text = driver.switch_to.alert.text
print(text)
driver.switch_to.alert.dismiss()
# driver.switch_to.alert.accept()
# result = EC.alert_is_present()(driver)
# if result:
# print(result.text )
# result.accept()
# else:
# print ("alert 未弹出!")