alt.accept() :                            等同于单击“确认”或者“OK”

alt.dismiss() :                           等同于单击“取消”或者“Cancel”

alt.send_keys() :                     发送文本,针对有提交需求的prompt框

alt.text() :                                 获取alert文本的内容

alt.authenticate(username,password) :   验证,针对需要身份验证的alert

-------------------------------------------------------------------------------------------------------------------

浏览器的弹窗不属于html页面元素,而是属于windows的控件元素,所有使用

与处理多浏览器一样的方式,即使用类switch的方式来获取弹框

<html>
<head>
<script type="text/javascript">
function show_alert(){
alert('第一行\n第二行');
}

function show_confirm(){
var result = confirm('是否删除!');
if(result){
alert('删除成功!');
}else{
alert('不删除!');
}
}

function show_prompt(){
var value = prompt('输入你的名字:', '默认名字');
if(value == null){
alert('你取消了输入!');
}else if(value == ''){
alert('姓名输入为空,请重新输入!');
show_prompt();
}else{
alert('你好,'+value);
}
}
</script>
</head>
<body>
<input id="alert_button" type="button" value="alert" onclick="show_alert()" >
<input id="confirm_button" type="button" value="confirm" onclick="show_confirm()" >
<input id="prompt_button" type="button" value="prompt" onclick="show_prompt()" >
</body>
</html>

桌面创建此html文档:tanchuang.html

file:///C:/Users/del/Desktop/tanchuang.html

==============================================================

from selenium import webdriver
from selenium.webdriver.common.alert import Alert
from time import sleep driver = webdriver.Firefox() # 指定和打开浏览器
driver.get('file:///C:/Users/del/Desktop/tanchuang.html') driver.find_element_by_id('alert_button').click() #单击触发弹框的元素
sleep(5) driver.switch_to.alert.accept()
sleep(5) driver.find_element_by_id('alert_button').click()
alt = Alert(driver)
sleep(3)
alt.accept()
sleep(5) driver.close() ========================================================================
from selenium import webdriver
from selenium.webdriver.common.alert import Alert
from time import sleep driver = webdriver.Firefox() # 指定和打开浏览器
driver.get('file:///C:/Users/del/Desktop/tanchuang.html') driver.find_element_by_id('confirm_button').click() #单击触发弹框的元素 sleep(5)
driver.switch_to.alert.dismiss() #点击取消按钮 sleep(8)
driver.switch_to.alert.accept() #点击确定 sleep(8) driver.find_element_by_id('confirm_button').click() #单击触发弹框的元素 sleep(5)
driver.switch_to.alert.accept() #点击确定按钮
sleep(8)
driver.switch_to.alert.accept() #点击确定
sleep(8) driver.close()
===============================================================================

from selenium import webdriver
from selenium.webdriver.common.alert import Alert
from time import sleep driver = webdriver.Firefox() # 指定和打开浏览器
driver.get('file:///C:/Users/del/Desktop/tanchuang.html') driver.find_element_by_id('prompt_button').click() #单击触发弹框的元素 sleep(5)
print(driver.switch_to.alert.text) #打印alter文本框里面的文字 driver.switch_to.alert.send_keys('沈巍伟') sleep(5)
driver.switch_to.alert.accept() #点击确定 sleep(5)
driver.switch_to.alert.accept() #点击确定 sleep(5) driver.close()
												

python+selenium下弹窗alter对象处理01的更多相关文章

  1. python+selenium下弹窗alter对象处理02

    首先使用switch_to.alert()方法进行定位,然后可以使用下面的操作 text:返回alert.confirm.prompt中的文字信息: accept():接受现有警告框: dismiss ...

  2. python selenium下拉框定位

    一.前言 总结一下python+selenium select下拉选择框定位处理的两种方式,以备后续使用时查询: 二.直接定位(XPath) 使用Firebug找到需要定位到的元素,直接右键复制XPa ...

  3. Python+Selenium学习--定位一组对象

    场景 从上一节的例子中可以看出,webdriver可以很方便的使用find_element方法来定位某个特定的对象,不过有时候我们却需要定位一组对象,这时候就需要使用find_elements方法. ...

  4. Python+selenium下拉菜单选项

    案例:在我要自学网登录页面选择要保留的时间 具体页面如图所示: 使用前端工具查看部分页面代码: <select class="loinp" name="Cookie ...

  5. python selenium 多个页面对象类使用同一个webdriver(即只打开一个浏览器窗口)

    1 class BasePage(): 2 """selenium基类""" 3 4 def __init__(self, driver=N ...

  6. python selenium 下拉框

    下拉框的处理如下代码: 定位select有很多种方式,这里介绍两种定位方式 1.二次定位 先定位到下拉框:self.dr.find_element_by_css_selector('#business ...

  7. python+selenium元素定位之XPath学习01

    参考文档1:https://www.w3school.com.cn/xpath/xpath_syntax.asp 参考文档2:https://www.runoob.com/xpath/xpath-tu ...

  8. python+selenium元素定位之CSS学习01

    参考文档:https://www.w3school.com.cn/cssref/css_selectors.asp 选择器 例子 例子描述 CSS .class .intro 选择 class=&qu ...

  9. Python+selenium之弹窗

随机推荐

  1. SOA,Webservice,SOAP,REST,RPC,RMI,JMS的区别与联系(转载)

    原文地址:http://blog.csdn.net/pcceo1/article/details/51245249 SOA面向服务的软件架构(Service Oriented Architecture ...

  2. Rsync参数介绍

    Rsync参数介绍   一.Rsync Rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据镜像同步备份的优秀工具.rsync适用于unix/linux/windows等多种操作 ...

  3. PIXI兼容微信小游戏

    首先导入官方的weapp-adapter,然后导入pixi.min.js,微信小程序使用ES6的module引用模块,具体参见ES6的Module. import './libs/weapp-adap ...

  4. python 字符词串和字符串的转换

    type(' i am ') str type(''.join('i am')) str ''.join('sda sadaa') 'sda sadaa' q=str('i am the teache ...

  5. 手动安装jar包到maven仓库

    1.手动安装jar包到maven仓库 本地没有下载安装maven,但是eclipse已经集成的maven. 选中任何一个maven项目,右键/Run as/maven build... 在Goals输 ...

  6. VSCode编辑器用户设置

    {"gitlens.advanced.messages": {"suppressCommitHasNoPreviousCommitWarning": false ...

  7. vue 渲染是出现 Do not use built-in or reserved HTML elements as component id 的警告

    情况1.是因为组件命名和引入不一致造成的. 命名组件(nav) export default { name: 'nav', data () { return { } } 引入组件(Navigation ...

  8. Android使用init.rc触发脚本实现隐藏内置应用

    [实现逻辑] 通过在property_service.c中设置标志位,在设置中实现接口改变标志位, 使用init.rc中声明的服务来侦听标志位的变化,显式启动声明的服务,执行对应的脚本,把应用后缀从a ...

  9. shell基础练习题

    shell 基础练习题 1.编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小 #!/bin ...

  10. 在MyEclipse安装Spket插件,用于jQuery代码提示

    Spket插件下载: https://pan.baidu.com/s/1sjz24NF 解压文件,然后将解压后的文件全部复制到MyEclipse安装目录下的dropins包中,重启MyEclipse. ...