python上selenium的弹框操作实现


Posted in Python onJuly 13, 2020

selenium之弹框操作

1,分类

弹框类型自见解分为四种:

1,页面弹框

2,警告提示框(alert)

3,确认消息框(confirm)

4,提示消息对话(prompt)

提示: selenium 提供switch_to_alert()方法定位到 alert/confifirm/prompt对话框。

2,操作

1,页面弹框

页面弹框是属于HTML里面的元素,它是由用户在操作页面的时候在本页面弹出的。所以科研直接在页面上定位到

步骤:

1,用户操作后,弹出页面弹框

2,直接定位弹框元素,进行操作

以下是例示代码:

from selenium import webdriver #引入库


#打开谷歌浏览器
driver=webdriver.Chrome()
#打开网页
driver.get('http://www.baidu.com')
#定位百度的登录元素,然后点击操作
driver.find_element_by_css_selector('#u1 > a.s-top-login-btn.c-btn.c-btn-primary.c-btn-mini.lb').click()
#弹框出现后,我们直接定位元素操作就好了
driver.find_element_by_css_selector('#TANGRAM__PSP_11__footerULoginBtn').click()

2,警告消息框

警告消息框是必须先关闭了用户才能操作的框,它提供了一个确认按钮,以及警告消息。

操作代码如下:

from time import sleep
from selenium import webdriver
#引入库

#打开谷歌,网址
driver=webdriver.Chrome()  
driver.get('http://119.23.55.123:8084/fsmarket/user.php')

#我们定位获取警告框的元素,点击,弹出警告框
driver.find_element_by_css_selector('#cnblogs_post_body > p:nth-child(17)').click()

sleep(1)  #为了可能因为网络等问题而获取不到弹框,我们添加等待时间

#然后我们获取警告框,赋予变量名
alert=driver.switch_to.alert
#获取消息框文本在控制台打印
print(alert.text)

alert.accept()   #关闭框操作  接受弹框

3,确认消息框(confirm)

确认消息框提供是或否操作,用户可以根据选择"确定"按钮和"取消"按钮。与警告消息框不同的是,多了个取消按钮

操作代码如下:

from time import sleep
from selenium import webdriver
#引入库

#打开谷歌,网址
driver=webdriver.Chrome()  
driver.get('http://119.23.55.123:8084/fsmarket/user.php')

#我们定位获取消息框的元素,点击,弹出消息框
driver.find_element_by_css_selector('/html/body/div/input[3]').click()

sleep(1)  #为了可能因为网络等问题而获取不到弹框,我们添加等待时间

#然后我们获取消息框,赋予变量名
alert=driver.switch_to.alert
#获取消息框文本在控制台打印
print(alert.text)

alert.accept()   #关闭框操作  接受弹框

alert.dismiss()  #关闭框操作  取消弹框

4,提示消息对话(prompt)

提示消息框提供了一个文本字段,用户可以在此字段输入一个内容来响应对话框提示。该消息框有一个"确定"按

钮和一个"取消"按钮。选择"确认"会响应对应的提示信息,选择"取消"会关闭对话框。

操作代码如下:

from time import sleep
from selenium import webdriver
#引入库

#打开谷歌,网址
driver=webdriver.Chrome()
driver.get('file:///C:/Users/hunk/Desktop/alter.html')

#我们定位获取对话框的元素,点击,弹出对话框
driver.find_element_by_css_selector('/html/body/div/input[3]').click()

sleep(1)  #为了可能因为网络等问题而获取不到弹框,我们添加等待时间

#然后我们获取对话框,赋予变量名
alert=driver.switch_to.alert
#获取对话框文本在控制台打印
print(alert.text)
alert.send_keys("我是小白") #弹出框内输入内容
alert.accept() #接受
print (driver.find_element_by_xpath('//*[@id="textSpan"]/font').text) #获取关闭弹窗结果 #获取确 认弹窗结果

到此这篇关于python上selenium的弹框操作实现的文章就介绍到这了,更多相关python selenium弹框操作内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python映射列表实例分析
Jan 26 Python
深入讨论Python函数的参数的默认值所引发的问题的原因
Mar 30 Python
Python手机号码归属地查询代码
May 04 Python
python矩阵/字典实现最短路径算法
Jan 17 Python
Python Django框架url反向解析实现动态生成对应的url链接示例
Oct 18 Python
详解Anconda环境下载python包的教程(图形界面+命令行+pycharm安装)
Nov 11 Python
python自动识别文本编码格式代码
Dec 26 Python
常用python爬虫库介绍与简要说明
Jan 25 Python
如何在python中处理配置文件代码实例
Sep 27 Python
Python暴力破解Mysql数据的示例
Nov 09 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
Feb 27 Python
Python 中的 copy()和deepcopy()
Nov 07 Python
python如何导入依赖包
Jul 13 #Python
python入门:argparse浅析 nargs='+'作用
Jul 12 #Python
浅谈Python 命令行参数argparse写入图片路径操作
Jul 12 #Python
Python实现封装打包自己写的代码,被python import
Jul 12 #Python
Django封装交互接口代码
Jul 12 #Python
在django中实现choices字段获取对应字段值
Jul 12 #Python
利用python对mysql表做全局模糊搜索并分页实例
Jul 12 #Python
You might like
德生S2000收音机更换“钕铁硼”全频扬声器
2021/03/02 无线电
LotusPhp笔记之:Logger组件的使用方法
2013/05/06 PHP
浅析php数据类型转换
2014/01/09 PHP
Thinkphp框架开发移动端接口(1)
2016/08/18 PHP
php正则修正符用法实例详解
2016/12/29 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
2017/08/28 PHP
解决laravel上传图片之后,目录有图片,但是访问不到(404)的问题
2019/10/14 PHP
windows系统php环境安装swoole具体步骤
2021/03/04 PHP
jquery一般方法介绍 入门参考
2011/06/21 Javascript
jquery实现下拉菜单的二级联动利用json对象从DB取值显示联动
2014/03/27 Javascript
js获取时间并实现字符串和时间戳之间的转换
2015/01/05 Javascript
jQuery使用hide方法隐藏元素自身用法实例
2015/03/30 Javascript
JS仿QQ好友列表展开、收缩功能(第一篇)
2017/07/07 Javascript
vue-router 实现导航守卫(路由卫士)的实例代码
2018/09/02 Javascript
layui时间控件选择时间范围的实现方法
2019/09/28 Javascript
JS遍历树层级关系实现原理解析
2020/08/31 Javascript
CentOS 8.2服务器上安装最新版Node.js的方法
2020/12/16 Javascript
[04:19]完美世界携手游戏风云打造 卡尔工作室模型介绍篇
2013/04/24 DOTA
[53:52]EG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python爬取51job中hr的邮箱
2016/05/14 Python
用python记录运行pid,并在需要时kill掉它们的实例
2017/01/16 Python
Python竟能画这么漂亮的花,帅呆了(代码分享)
2017/11/15 Python
python调用百度语音REST API
2018/08/30 Python
Python3.6实现带有简单界面的有道翻译小程序
2019/04/16 Python
Django框架实现的分页demo示例
2019/05/25 Python
HTML块级标签汇总(小篇)
2016/07/13 HTML / CSS
世界上最好的帽子:Tilley
2016/11/27 全球购物
美国在线眼镜商城:Eyeglasses.com
2017/06/26 全球购物
Nike瑞典官方网站:Nike.com (SE)
2018/11/26 全球购物
英国购买威士忌网站:Master of Malt
2019/09/26 全球购物
促销活动方案模板
2014/02/24 职场文书
yy婚礼主持词
2014/03/14 职场文书
实习生工作证明范本
2014/09/14 职场文书
退休教师追悼词
2015/06/23 职场文书
2016年第二十五次全国助残日活动总结
2016/04/01 职场文书
美国运营商 T-Mobile 以 117.83Mb/s 的速度排第一位
2022/04/21 数码科技