对话框处理
Posted 灰姑娘的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对话框处理相关的知识,希望对你有一定的参考价值。
1、思路
使用switch_to.alert()方法定位到 alert/confirm/prompt。然后使用 text/accept/dismiss/send_keys 按需进行操做。
-
text 返回 alert/confirm/prompt 中的文字信息。
-
accept 点击确认按钮。
- dismiss 点击取消按钮,如果有的话。
- send_keys 输入值,这个 alert\\confirm 没有对话框就不能用了,不然会报错。
2、需求
在百度设置页面,设置完成后点击“保存设置”弹出提示框。通过脚本来处理这个弹窗。
3、代码实现
1 #coding=utf-8 2 3 from selenium import webdriver 4 from selenium.webdriver.common.action_chains import ActionChains 5 import time 6 7 #打开百度 8 driver = webdriver.Firefox() 9 driver.get("http://www.baidu.com") 10 time.sleep(3) 11 12 #打开搜索设置 13 driver.find_element_by_xpath(\'//*[@id="u1"]/a[8]\').click() 14 time.sleep(3) 15 driver.find_element_by_link_text(u\'搜索设置\').click() 16 time.sleep(3) 17 18 #保存搜索设置,弹出确认窗体 19 driver.find_element_by_link_text(u\'保存设置\').click() 20 time.sleep(5) 21 22 #获得文本信息并打印 23 alert = driver.switch_to.alert 24 print(alert.text) 25 26 #接受警告信息 27 alert.accept() 28 time.sleep(5) 29 30 #取消对话框(如果有的话) 31 # alert.dismiss() 32 #输入值(如果有的话) 33 # alert.send_keys("xxx") 34 #关闭浏览器 35 driver.close()
以上是关于对话框处理的主要内容,如果未能解决你的问题,请参考以下文章