警告框处理

处理警告框的原因:如果页面有弹出框,不处理,接下来的将不生效。

2、对话框类型:

alert #警告框 confirm #确认框 prompt #提示框 3、处理方法:

以上三种对话框,处理方法都一样。

步骤:

(1)切换到对话框,方法:driver.switch_to.alert

(2)处理对话框

  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()

 

posted @ 2022-03-08 17:42  饭兜  阅读(56)  评论(0编辑  收藏  举报