警告框处理
处理警告框的原因:如果页面有弹出框,不处理,接下来的将不生效。
2、对话框类型:
alert #警告框 confirm #确认框 prompt #提示框 3、处理方法:
以上三种对话框,处理方法都一样。
步骤:
(1)切换到对话框,方法:driver.switch_to.alert
alert.text #获取文本
alert.accept #同意
alert.dismiss #取消
1 from selenium import webdriver 2 from time import sleep 3 from selenium.webdriver.common.action_chains import ActionChains 4 5 # 获取浏览器对象 6 driver = webdriver.Chrome() 7 driver.implicitly_wait(5) 8 driver.maximize_window() 9 # 获取网络链接 10 url = "https://www.baidu.com/" 11 driver.get(url) 12 13 # 实例化并获取ActionChains类 14 action = ActionChains(driver) 15 # 定位设置。悬停在设置上 出现下拉框 16 set_el = driver.find_element_by_css_selector("#s-usersetting-top") 17 action.move_to_element(set_el).perform() 18 19 #定位搜索设置元素 点击 20 serch_set = driver.find_element_by_css_selector(".setpref").click() 21 save_set = driver.find_element_by_css_selector(".prefpanelgo.setting-btn.c-btn.c-btn-primary").click() 22 23 # 切换到alert,默认返回alert对话框对象 24 alert = driver.switch_to.alert 25 26 """处理对话框""" 27 # 1、同意,确认按钮 28 # alert.accept() 29 # sleep(2) 30 31 # 2、取消按钮 32 # alert.dismiss() 33 # sleep(2) 34 35 # 3、获取alert文本,之后必须取消 或者确定 36 print(alert.text) 37 alert.accept() 38 sleep(2) 39 40 driver.quit()