selenium切换窗口句柄
文章目录
- 切换至下一个窗口
- 切换到第几个窗口
- 切换到指定的窗口
切换至下一个窗口
大致逻辑是通过 getWindowHandles 这个方法获取窗口的Set<String>
集合,然后通过 for 循环,只要找到第一个窗口句柄和当前窗口句柄不一样的,我们就切换到这个新句柄
for (String window : driver.getWindowHandles()) {if (!window.equals(driver.getWindowHandle())) {driver.switchTo().window(window);break;}
}
切换到第几个窗口
我们也可以切换到第几个句柄,因为 set 是无序的,所以真实窗口的顺序和实际 set 中取出数据的顺序不一致,但我们可以转成数组来取
Object[] obj = driver.getWindowHandles().toArray();
driver.switchTo().window(obj[3].toString());
切换到指定的窗口
我们除了可以切换到下一个窗口,切换到第几个窗口,我们也可以切换到指定的窗口
我们通过判定窗口标题是不是“百度”来判定当前窗口是否切换成功,如果你不想用标题判断,用 url 判断也是一样的if (driver.getCurrentUrl() == "https://www.baidu.com/")
for (String window : driver.getWindowHandles()) {if (driver.getTitle() == "百度") {break;}driver.switchTo().window(window);
}
selenium切换窗口句柄相关推荐
- [python爬虫] Selenium切换窗口句柄及调用Chrome浏览器
因为我的博客是根据我每个阶段自己做的事情而写的,所以前言可能有点跑题,但它更有利于让我回忆这个阶段自己的所作所为.这篇文章主要介绍Selenium爬虫获取当前窗口句柄.切换窗口句柄以及调用Chrome ...
- selenium+Java切换窗口句柄
参考: selenium切换窗口句柄 1. 切换至下一个窗口 大致逻辑是通过 getWindowHandles 这个方法获取窗口的Set<String> 集合,然后通过 for 循环,只要 ...
- python3之Scrapy+Selenium切换iframe抓取网易云音乐排行榜
Scrapy+Selenium切换iframe抓取网易云音乐排行榜 iframe标签 Selenium (WEB自动化工具) Scrapy 框架 iframe标签 了解一下iframe 百度百科介绍的 ...
- selenium切换窗口的几种方法小结
第一种方法 使用场景 打开多个窗口,需要定位到新打开的窗口: 使用方法: # 获取打开的多个窗口句柄 windows = driver.window_handles # 切换到当前最新打开的窗口 dr ...
- python自动切换链接_python+selenium自动化(四)之selenium切换窗口
当我们点击某个链接时,切换换到另一个窗口,这时就需要跟随切换到新打开的页面,去定位元素. 1.获取当前页面句柄 current_window_handle importtimefrom seleni ...
- selenium切换窗口 java_WebDriver(Selenium2) 根据新窗口title切换窗口
[在web自动化测试中点击一个链接然后弹出新窗口是比较司空见惯的事情.webdriver中处理弹出窗口跟处理frame差不多,以下面的html代码为例window.html Popup Wi ...
- python selenium iframe怎么定位_python+selenium 切换iframe
转载自 http://www.cnblogs.com/yoyoketang/p/6128619.html 前言 有很多小伙伴在拿163作为登录案例的时候,发现不管怎么定位都无法定位到,到底是什么鬼呢, ...
- selenium切换窗口
在做网页自动化测试的时候,难免会打开很多个网页,那么,如何在多个窗口之间切换呢? 获取窗口的唯一标识用句柄(handle)表示,因此只需要切换句柄,就可以灵活的在各窗口之间切换. 下面介绍几个方法 c ...
- selenium切换iframe框架案例——翻页爬取网易云音乐歌单作者和名称
翻页爬取网易云音乐歌单作者和标题 案例目的: 通过翻页selenium操作网易云音乐,介绍如何切换iframe框架以及如何使用selenium定位数据所在的节点. 代码功能: 输入下载的数据页数,自动 ...
最新文章
- (数据挖掘-入门-1)基于用户的协同过滤之最近邻
- StackOverflow问题:How to share CMSComponentData between several components in Spartacus manner
- c mysql binlog_Mysql Binlog
- java池_java中的各种池
- 数据分析--商业报告实例
- 数据结构 5-3-3 二叉树的线索化
- 将json转为map的两种方式及前后端开发json Api设计规范总结
- 跑马灯效果 例子 写法 利用闭包
- Excel 做统计学分析
- CentOS-6.3安装配置JDK-7 - Constantin - 博客园
- erlang中的ets和dets
- 2022年中职组网络安全国赛AB模块解析第一套
- 纯CSS 红砖背景墙
- 和GGA的第一次亲密接触
- 高德地图 hello world
- C中最复杂难懂的一行代码
- Java 图像处理教程(人脸检测,添加水印,图像颜色转换)
- sqlyog详细安装流程
- maya2016版本后更改界面文字大小方法
- 计算机一级考试试题在线操作,计算机一级考试试题操作题和答案
热门文章
- pytorch transforms图像增强
- 产学交流 | 重庆理工大学计算机科学与工程学院信息管理系一行到访芝诺数据...
- 解决SQL适配器连接到字符集为US7ASCII的Oracle数据库的中文乱码问题
- 前端必会的 HTML+CSS 常用技巧 之 虚线的实现方式
- Java小写金额转换大写与金额比对(支持繁体大写金额)
- 联通4G业务或沿用沃品牌 不推无限量套餐
- Spring boot的特性与四大核心
- power 相关:(二)功耗的分析 —— power compiler
- ESP8266 带 BMP 180 刷 ESPEasy 通过MOTT协议连接 docker 里的 domoticz 查看气温 气压 监控结果
- sql server出生年月减去退休年月 计算年龄