selenium浏览器弹出框alert 操作
1.简介
在WebDriver中要处理JS生成的alert、confirm以及prompt,需要 switch_to.alert() 来选取(定位)警告弹窗,在对弹窗进行关闭、输入等信息操作。
2.操作方法
操作方法:
|
switch_to.alert()(老写法:switch_to_alert()) |
通过 switch_to.alert 切换到 alert |
|
accept() |
确认 |
|
dismiss |
取消 |
|
send_keys() |
有输入框才能使用,否则报错 |
|
authenticate(username,password) |
验证,针对需要身份验证的 alert ,目前还没有特别合适的实例 |
|
text |
获取 alert 文本内容,对有信息显示的 alert 框 |
3.实例:
from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC driver = webdriver.Chrome()
driver.implicitly_wait(30) # 等待元素存在、命令执行完成 driver.get("D:\\Pychram-Workspace\\py17_web\\myH.html") # 打开有alert弹框的HTML页面 driver.find_element_by_id("press_me").click() # 点击触发alert弹框 alert = WebDriverWait(driver,10).until(EC.alert_is_present()) # 等待元素可见 # 点击确定,关闭弹出框
alert.accept()
selenium浏览器弹出框alert 操作的更多相关文章
- 自动化测试基础篇--Selenium弹出框alert
摘自https://www.cnblogs.com/sanzangTst/p/7685304.html 不是所有的弹出框都叫alert,在使用alert方法前,先要识别出到底是不是alert.先认 ...
- 自动化测试-12.selenium的弹出框处理
前言 不是所有的弹出框都叫alert,在使用alert方法前,先要识别出到底是不是alert.先认清楚alert长什么样子,下次碰到了,就可以用对应方法解决. alert\confirm\prompt ...
- 弹出框Alert
selenium提供了三个处理alert的方法 注意:首先需要切换窗口到alert driver.switch_to.alert() (1)点击确定按钮 driver.switch_to.alert. ...
- Selenium Webdriver弹出框的种种类型
普通弹出框 div 一般这种 弹出框都属于dom的一部分,我们查看一下页面源码就可以定位到改弹出框了,然后定位下右上角的那个关闭, 这里有id,所以很方便通过 dr.findElement(By.id ...
- Selenium+java - 弹出框处理
一.弹出框分类: 弹出框分为两种,一种基于原生JavaScript写出来的弹窗,另一种是自定义封装好的样式的弹出框,本文重点介绍原生JavaScript写出来的弹窗,另一种弹窗用click()基本就能 ...
- (十)弹出框Alert与ActionSheet
第一种方式:中间弹窗 从中间弹出的窗口称为AlertView. 可以设置多个按钮,取消按钮会放在对右端或者最下端,按钮超过两个,会竖着排列. UIAlertView *alert = [[[UIAle ...
- [Selenium]对弹出的Alert窗口进行操作
Alert alert = driver.switchTo().alert(); alert.accept();
- Watir: Watir webdriver对JS 弹出框的操作现在非常简单。
以下代码支持Firefox,IE,Chrome require 'watir-webdriver' #require "watir-webdriver/extensions/alerts&q ...
- Selenium Webdriver弹出框 微博分享的内容控制与结果生成
browser.window_handles for i in ugc_url_l: js = 'window.location.href="{}"'.format(i) brow ...
随机推荐
- python多元回归于调用excel文件
import xlrd from numpy.linalg import inv import numpy as np data = xlrd.open_workbook(u'C:\\Users\\x ...
- Python自动化办公第三方库xlwt
Python向excel表格写入内容,首先安装第三方库: pip3 install xlwt 代码实例(结合xlrd): #!usr/bin/env python3 #!-*-coding=utf-8 ...
- NPOI导入excel
1.引用NPOI: using NPOI.HSSF.UserModel;using NPOI.HSSF.Util;using NPOI.SS.UserModel; 2.导出excel 1 privat ...
- 使用IDE练习插件【廖雪峰】
使用廖雪峰大神的插件,安装过程中,一直出现问题,然后在他的Java教程下面看大家的评论也有点晕了(很多人说的是jar包,结果其实是下的依旧是zip包) 最终解决方法: 将zip包解压到同名文件夹中,再 ...
- Docker - 配置加速器
https://www.daocloud.io/mirror#accelerator-doc curl -sSL https://get.daocloud.io/daotools/set_mirror ...
- ssrf与gopher与redis
ssrf与gopher与redis 前言 ssrf打redis是老生常谈的问题,众所周知redis可以写文件,那么ssrf使用gopher协议去控制未授权的redis进行webshell的写入和计划任 ...
- JDBC学习(错误反思)
注意拼写错误!!! 注意拼写错误!!! 注意拼写错误!!! 文档注释快捷键 alt+shift+J
- CRM、DMP、CDP概念解析
CRM.DMP.CDP,都是什么鬼?有什么区别差异?别说你都懂 摘自https://maxket.com/crm-dmp-cdp/ 如果您不想多花人生中宝贵的十分钟,那么不用多考虑了,上CDP吧.如果 ...
- 仿小米logo案例
效果:做一个具有logo能过渡切换效果,类似于小米网站的logo 思路:将两个用于切换的logo以文字形式嵌入活动块banner的左右半,活动块banner的上级是主展示块box,初态只展示右半log ...
- Java GC --- Java堆内存
Java堆是被所有线程共享的一块内存区域,所有对象实例和数组都在堆上进行内存分配.为了进行高效的垃圾回收,虚拟机把堆内存划分成: 1. 新生代(Young Generation): 由 Eden 与 ...