python+selenium下弹窗alter对象处理01
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的更多相关文章
- python+selenium下弹窗alter对象处理02
首先使用switch_to.alert()方法进行定位,然后可以使用下面的操作 text:返回alert.confirm.prompt中的文字信息: accept():接受现有警告框: dismiss ...
- python selenium下拉框定位
一.前言 总结一下python+selenium select下拉选择框定位处理的两种方式,以备后续使用时查询: 二.直接定位(XPath) 使用Firebug找到需要定位到的元素,直接右键复制XPa ...
- Python+Selenium学习--定位一组对象
场景 从上一节的例子中可以看出,webdriver可以很方便的使用find_element方法来定位某个特定的对象,不过有时候我们却需要定位一组对象,这时候就需要使用find_elements方法. ...
- Python+selenium下拉菜单选项
案例:在我要自学网登录页面选择要保留的时间 具体页面如图所示: 使用前端工具查看部分页面代码: <select class="loinp" name="Cookie ...
- python selenium 多个页面对象类使用同一个webdriver(即只打开一个浏览器窗口)
1 class BasePage(): 2 """selenium基类""" 3 4 def __init__(self, driver=N ...
- python selenium 下拉框
下拉框的处理如下代码: 定位select有很多种方式,这里介绍两种定位方式 1.二次定位 先定位到下拉框:self.dr.find_element_by_css_selector('#business ...
- python+selenium元素定位之XPath学习01
参考文档1:https://www.w3school.com.cn/xpath/xpath_syntax.asp 参考文档2:https://www.runoob.com/xpath/xpath-tu ...
- python+selenium元素定位之CSS学习01
参考文档:https://www.w3school.com.cn/cssref/css_selectors.asp 选择器 例子 例子描述 CSS .class .intro 选择 class=&qu ...
- Python+selenium之弹窗
随机推荐
- 十三、S3C2440 裸机 — 初始化代码及MMU
13.1 NOR FLASH 搬运 把程序从 nor flash 上搬运到 SDRAM 中 程序存储在 nor flash 上,运行时将程序搬运到 SDRAM 中运行 nor flash 启动:nor ...
- CF 1272F Two Bracket Sequences (括号dp)
题目地址 洛谷CF1272F Solution 首先题目中有两个括号串 \(s\) 和 \(t\) ,考虑先设计两维表示 \(s\) 匹配到的位置和 \(t\) 匹配到的位置. 接着根据 括号dp的一 ...
- 告别if/else连环写法
1.once Upon a time 在平时的编码过程中,我们大部分新手可能都特别钟情于 if/else连环写法,比如举个简单栗子: 拿订单来说,我们正常的订单类型有多种,那么对应就会生成不同的收款, ...
- Hibernate方法save、update、merge、saveOrUpdate及get和load的区别
在看这几个方法区别之前,有必要了解hibernate实体对象的三种状态,点击查看 http://www.cnblogs.com/Y-S-X/p/8345754.html 一.update 和 merg ...
- js-弹框倒计时三秒后,自动关闭???
效果: js: //弹出窗,三秒倒计时 countdown(){ //点击发布按钮后,三秒倒计时开始 $(".btn-pub").click(function(){ var cou ...
- js 中使用typeof
>typeof(null) <"object" 对null执行typeof预算,结果返回字符串'object',也就是说,可以将null认为是一个特殊的对象值,含义是“ ...
- CF 149E Martian Strings 后缀自动机
这里给出来一个后缀自动机的题解. 考虑对 $s$ 的正串和反串分别建后缀自动机. 对于正串的每个节点维护 $endpos$ 的最小值. 对于反串的每个节点维护 $endpos$ 的最大值. 这两个东西 ...
- python学习之路(25)
继承和多态 在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类.父类或超类(Base clas ...
- java中定义注解
创建 @Target({ElementType.Type}) @Retention(RetentionPolicy.RUNTIME) public @interface Fruit { String ...
- 本地运行aws lambda credential 配置 (missing credential config error)
参照这篇文章 http://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/loading-node-credentials-sha ...