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之弹窗
随机推荐
- linux下为已经编译好的php环境添加mysql扩展(php安装完成后如何添加mysql扩展)
问题背景 平常我们都是先安装mysql,然后才能去安装php.假如先安装php,后安装mysql,由于php需要连接mysql,因而在php引擎中需要配置使用mysql.so扩展.这时需要手动编译生成 ...
- html applet标签 语法
html applet标签 语法 作用:定义嵌入的 applet. 说明:某些浏览器中依然存在对 <applet> 但是需要额外的插件和安装过程才能起作用.大理石机械构件 注释:HTML5 ...
- POJ 2528 Mayor’s posters (线段树段替换 && 离散化)
题意 : 在墙上贴海报, n(n<=10000)个人依次贴海报,给出每张海报所贴的范围li,ri(1<=li<=ri<=10000000).求出最后还能看见多少张海报. 分析 ...
- 2018百度之星初赛A轮 度度熊拼三角
#include<bits/stdc++.h> using namespace std; int n; int a[1005]; int main() { int ans; ...
- jQuery字体图标的三种方法
BootStrap框架原生图标 在导入BootStrap包的同时,导入bootstrap-3.3.7-dist/css/bootstrap.css层叠样式; <button type=" ...
- Python3学习笔记(五):列表和元组
一.列表 列表是可变的--可以改变列表的内容 list函数可以把各种类型的序列拆分列表 >>> list('Hello') ['H', 'e', 'l', 'l', 'o'] 二.列 ...
- easyui 功能栏onclick传递object参数
{ field: 'Delete', title: '操作', width: 60, formatter: function (value, row, index) { var jrow = []; ...
- 大哥带的Orchel数据库时间盲注
0X01Oracle基于延时的盲注总结 0x00 前言 oracle注入中可以通过页面响应的状态,这里指的是响应时间,通过这种方式判断SQL是否被执行的方式,便是时间盲注: oracle的时间盲注通常 ...
- 测试常用linux命令之sed篇
一.sed命令 可以放在单独的脚本文件中执行:sed -f script1 data1 多条命令也可以用{}括起来 sed可以进行文本的替换,删除,行添加,打印等.采用 sed [address]{c ...
- css命名和书写规范
前言 在项目开发中对于css名字的命名和书写老是感觉很混乱,这对于代码的可读性以及维护提出了挑战,所以在闲暇之余看了一些这方面的内容,现总结如下... 1.命名规则说明 所有的命名最好都小写 属性的值 ...