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基础教程之简单入门说明(变量和控制语言使用方法)
Mar 25 Python
Python2.x版本中cmp()方法的使用教程
May 14 Python
Python处理文本文件中控制字符的方法
Feb 07 Python
python获取文件真实链接的方法,针对于302返回码
May 14 Python
django 解决manage.py migrate无效的问题
May 27 Python
使用sklearn进行对数据标准化、归一化以及将数据还原的方法
Jul 11 Python
对python3 一组数值的归一化处理方法详解
Jul 11 Python
Python 列表的清空方式
Jan 13 Python
python实现百度OCR图片识别过程解析
Jan 17 Python
python argparse模块通过后台传递参数实例
Apr 20 Python
Python在字符串中处理html和xml的方法
Jul 31 Python
python glom模块的使用简介
Apr 13 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
php在线打包程序源码
2008/07/27 PHP
PHP使用json_encode函数时不转义中文的解决方法
2014/11/12 PHP
form自动提交实例讲解
2017/07/10 PHP
My Desktop :) 桌面式代码
2008/12/29 Javascript
JavaScript Tips 使用DocumentFragment加快DOM渲染速度
2010/06/28 Javascript
Google AJAX 搜索 API实现代码
2010/11/17 Javascript
Jquery命名冲突解决的五种方案分享
2012/03/16 Javascript
js页面跳转的问题(跳转到父页面、最外层页面、本页面)
2013/08/14 Javascript
jquery 新建的元素事件绑定问题解决方案
2014/06/12 Javascript
jQuery简单实现仿京东商城的左侧菜单效果代码
2015/09/09 Javascript
表单验证插件Validation应用的实例讲解
2015/10/10 Javascript
Bootstrap每天必学之表格
2015/11/23 Javascript
一览画面点击复选框后获取多个id值的方法
2016/05/30 Javascript
jQuery弹出下拉列表插件(实现kindeditor的@功能)
2016/08/16 Javascript
Node.js数据库操作之查询MySQL数据库(二)
2017/03/04 Javascript
JavaScript实现简单的双色球(实例讲解)
2017/07/31 Javascript
JavaScript中正则表达式判断匹配规则及常用方法
2017/08/03 Javascript
JavaScript实现二叉树的先序、中序及后序遍历方法详解
2017/10/26 Javascript
vue构建动态表单的方法示例
2018/09/22 Javascript
你知道JavaScript Symbol类型怎么用吗
2020/01/08 Javascript
[52:05]EG vs OG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
基于DataFrame筛选数据与loc的用法详解
2018/05/18 Python
Python操作Word批量生成合同的实现示例
2020/08/28 Python
如何使用python写截屏小工具
2020/09/29 Python
Python Process创建进程的2种方法详解
2021/01/25 Python
Farfetch香港官网:汇集全球时尚奢侈品购物平台
2017/11/26 全球购物
网站域名和主机:Domain.com
2019/04/01 全球购物
奥地利时尚、美容、玩具和家居之家:Kastner & Öhler
2020/04/26 全球购物
电子商务专业毕业生工作推荐信
2013/11/17 职场文书
土木工程专业个人求职信
2013/12/30 职场文书
水利局群众路线专题民主生活会发言材料
2014/09/21 职场文书
大学生赌博检讨书
2014/09/22 职场文书
茶楼服务员岗位职责
2015/02/09 职场文书
golang中的空slice案例
2021/04/27 Golang
一文搞懂php的垃圾回收机制
2021/06/18 PHP
通过Python把学姐照片做成拼图游戏
2022/02/15 Python