python3+selenium入门12-警告框处理
在WebDriver中要处理JS生成的alert、confirm以及prompt,需要使用到switch_to_alert()定位到alert/confirm/prompt,然后再使用text、accept()、dissmiss()、send_keys()等方法进行操作。
text:获得alert/confirm/prompt中的文本信息
accept():接受警告框
dissmiss():关闭警告框
send_keys():发送文本信息到警告框
from selenium import webdriver from selenium.webdriver.common.action_chains import ActionChains from selenium.webdriver.common.keys import Keys dr = webdriver.Chrome() dr.maximize_window() dr.implicitly_wait(10) dr.get('https://www.baidu.com')sz = dr.find_element_by_link_text('设置')#鼠标悬浮在设置按钮上 ActionChains(dr).move_to_element(sz).perform()dr.find_element_by_link_text('搜索设置').click() sst = dr.find_element_by_class_name('prefpanelgo')#保存设置按钮 sst.send_keys(Keys.ENTER)dr.switch_to_alert().send_keys() dr.close()
代码是在百度首页,悬停在设置按钮上,然后打开搜索设置,点击保存按钮后,接受弹出的警告框。
用Chrome自带的开发者工具的时候,直接用定位的按钮去点设置下的搜索设置,下拉菜单会出不来,可以先用鼠标点到下拉菜单中的搜索设置,然后再用定位按钮的快捷键:Ctrl+Shift+C去定位
在点击保存设置按钮的时候,直接使用click()会报错,一种像上面代码,通过键盘的Enter按键来代替。另一种就是time.sleep()几秒,然后再click()。好像是有个透明的div要加载的原因。
switch_to_alert(),PyCharm提示这不是最新的方法,最新的是switch_to.alert(),不过最新的貌似用了没反应。
转载于:https://www.cnblogs.com/myal/p/9389249.html
python3+selenium入门12-警告框处理相关推荐
- python3+selenium入门08-鼠标事件
使用click()可以模拟鼠标的左键点击事件,现在的web页面中有很多其他的鼠标交互方式,比如鼠标右击.双击.悬停.鼠标拖放等功能.在WebDriver中,将这些关于鼠标操作的方法封装在ActionC ...
- Bootstrap入门(二十一)组件15:警告框
Bootstrap入门(二十一)组件15:警告框 通过这些简单.灵活的进度条,为当前工作流程或动作提供实时反馈. 进度条组件使用了 CSS3 的 transition 和 animation 属性来完 ...
- Bootstrap入门(三十)JS插件7:警告框
Bootstrap入门(三十)JS插件7:警告框 通过这个插件可以为警告信息添加点击以及消失的功能. 当使用一个.close按钮,它必须是第一个子元素.alert-dismissible,并没有文字内 ...
- selenium 警告框处理
text: 返回 alert, confirm, prompt 中文字信息 accept(): 关闭现有的警告框 dismis(): 解散现有的警告框 send_key(): 可在警告框输入 from ...
- python弹出警告框_selenium+webdriver+python 中警告框的处理方法
在自动化测试过程中,经常会遇到弹出警告框的情况,如图所示: 在 WebDriver 中处理 JavaScript 所生成的 alert.confirm 以及 prompt 是很简单的.具体做法是使用 ...
- Python3快速入门(十四)——Pandas数据读取
Python3快速入门(十四)--Pandas数据读取 一.DataFrame IO 1.CSV文件 pandas.read_csv(filepath_or_buffer, na_values='NA ...
- python3菜鸟教程-总算理解python3中文入门教程
为了提高模块加载的速度,每个模块都会在__pycache__文件夹中放置该模块的预编译模块,命名为module.version.pyc,version是模块的预编译版本编码,一般都包含Python的版 ...
- 使用 JS 关闭警告框及监听自定义事件(amaze ui)
使用 JS 关闭警告框及监听自定义事件(amaze ui) 一.总结 1.jquery匿名函数:第8行,jquery匿名函数,$(function(){});,有没有很简单,只是少了jquery的前面 ...
- Bootstrap组件_警告框
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8" ...
- Swift - 操作表(UIActionSheel)的用法,也叫底部警告框
1,下面创建一个操作表(或叫底部警告框)并弹出显示 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 class ViewController: UIViewC ...
最新文章
- 微信公众号开发Django-网页授权
- 百度的TSDB——可针对tag查询,应该类似kairosDB
- 为什么c语言2的n次方减一,计算2的N次方........有什么错吗?
- [转]Python中多线程与多进程中的数据共享问题!
- Facebook 有序队列服务设计原理和高性能浅析
- ACT的摘要可以告诉我们的内容
- 【待完善】MongoDB - 数据模型
- javascript怎么开启详细教程
- 一文读懂ICS工业控制系统架构
- Android开发英语单词积累
- 02_制定自己的学习计划
- uni-app最新获取微信头像方法getUserProfile?
- C++ 值传递、指针传递、引用传递详解
- Python读写串口编程
- SpaceSniffer
- ssh:使用ssh链接服务器的时候报错 Add correct host key in /root/.ssh/known_hosts to get rid of this message
- 界面控件DevExtreme——轻松将TreeList数据导出为PDF格式
- 在PowerBI中使用R的限制
- blender导入OBJ缺失顶点颜色的解决办法
- layer.load使用
热门文章
- Python的单元测试工具——doctest
- SpringMVC 异常记录
- 再议动态二维数组,通过一句表达式完成矩阵的转置
- Hive静态分区和动态分区
- ASP .NET CORE MVC 部署Windows 系统上 IIS具体步骤---.Net Core 部署到 IIS位系统中的步骤...
- 使用ActiveMQ 传输文件 以及使用Jetty搭建内嵌文件服务器
- [topcoder]AvoidRoads
- hdu2534-Score
- 收集一些非常好用常用的用户函数。分享给大家参考。
- C#中判断字符是否为中文