Selenium获取当前窗口句柄与切换回原窗口句柄
Selenium通过window_handles获取当前窗口句柄,进行页面元素操作
切换回原窗口句柄,进行元素操作
代码如下:(python版)
__author__ = 'liuke' import unittest,time,re
from selenium import webdriver class Untitled(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome()
self.driver.implicitly_wait(10)
self.url = "http://www.baidu.com" def test_Untitled (self):
driver = self.driver
driver.get(self.url)
now_handle = driver.current_window_handle #获取当前窗口句柄
print (now_handle) #输出当前获取的窗口句柄
driver.find_element_by_id("kw").send_keys("流柯")
driver.find_element_by_id("su").click()
driver.find_element_by_partial_link_text("www.cnblogs.com/liu-ke/ ").click() #点击链接跳转新标签页
time.sleep(2)
all_handles = driver.window_handles #获取所有窗口句柄 for handle in all_handles: if handle != now_handle:
print (handle) #输出待选择的窗口句柄
driver.switch_to_window(handle) #绑定
driver.find_element_by_id("blog_nav_sitehome").click()
time.sleep(5)
driver.close() #关闭当前窗口
time.sleep(3)
print (now_handle) #输出主窗口句柄
driver.switch_to_window(now_handle) #返回主窗口
time.sleep(2)
driver.find_element_by_id("kw").clear()
driver.find_element_by_id("kw").send_keys("")
driver.find_element_by_id("su").click() time.sleep(10) def tearDown(self):
self.driver.quit()
#pass if __name__ == "__main__":
unittest.main()
以上。
注意driver与新窗口的绑定。
Selenium获取当前窗口句柄与切换回原窗口句柄的更多相关文章
- selenium获取多窗口句柄并一一切换至原窗口句柄(三个窗口)
网上有很多是selenium基于python来获取两个窗口句柄与切换,本文实现用python+selenium获取多窗口句柄并一一切换至原窗口句柄(三个窗口),且在每个窗口下进行一个搜索或翻译,然后截 ...
- selenium获取多窗口句柄并一切换至原窗口句柄(三个窗口)
网上有很多是selenium基于python来获取两个窗口句柄与切换,本文实现用python+selenium获取多窗口句柄并一一切换至原窗口句柄(三个窗口),且在每个窗口下进行一个搜索或翻译,然后截 ...
- S/4 HANA中发票输出切换回NAST
在S/4 HANA中,新的输出管理Output Management叫做SAP S/4HANA output control(输出控制),是基于BRF+的,而不是原来基于NAST的.关于S4新的输出控 ...
- selenium获取新页面标签页(只弹出一个新页面的切换)
selenium获取新页面标签页(只弹出一个新页面的切换) windows = driver.current_window_handle #定位当前页面句柄 all_handles = driver. ...
- selenium常用操作,查找元素,操作Cookie,获取截图,获取窗口信息,切换,执行js代码
目录: 1. 常用操作 2. 查找元素 3. 操作Cookie 4. 获取截图 5. 获取窗口信息 6. 切换 7. 执行JS代码 简介 selenium.webdriver.remote.webdr ...
- Power Pivot表属性无法切换回表预览模式的问题
近期Office365用户升级后解决了在Power Pivot中输入中文的问题,但是同时也带来了一个新的问题就是表属性窗口默认为“查询编辑器”模式,且无法切换回“表预览”模式. 本文和您分享在这种情况 ...
- TP-LINK WR941 DD-WRT刷回OpenWRT及OpenWRT刷回原厂固件
1.DD-Wrt 刷回 OpenWrt A.从官网下载固件: root@TL-DDWRT:/tmp# wget http://downloads.openwrt.org/barrier_breaker ...
- Python3.x:selenium获取iframe内嵌页面的源码
Python3.x:selenium获取iframe内嵌页面的源码 前言 在一些网页中经常会看到ifrmae/frame标签,iframe是嵌入式框架一般用来在已有的页面中嵌入另一个页面,当一个元素在 ...
- Selenium系列(七) - 切换iframe
如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...
随机推荐
- CMDB资产管理系统开发【day26】:linux客户端开发
客户端疑难点及获取流程 1.linux客户端支持2就可以,python3就是很麻烦 难道你要求所有的客户端都上pytho3吗? 现在从bin的入口进去 HouseStark.ArgvHandler(s ...
- CMDB服务器管理系统【s5day90】:API验证
1.认证思路刨析过程 1.请求头去哪里拿? 1.服务器端代码: def test(request): print(request) return HttpResponse('你得到我了') 2.客户端 ...
- Hadoop记录-JMX参数
Yarn metrics参数说明 获取Yarn jmx信息:curl -i http://xxx:8088/jmx Hadoop:service=ResourceManager,name=FSOpDu ...
- 中间件方法必须返回Response对象实例(tp5.1+小程序结合时候出的问题)
前言:在最近开发小程序通过中间件检查是否携带token时候报的一个错误 解决方法: 根据手册中需要return出去才可以不报错
- MongoDB实战性能优化
1. 性能优化分类 mongodb性能优化分为软件层面和操作系统层面. 软件层面,一般通过修改mongodb软件配置参数来达到,这个需要非常熟悉mongodb里面的各种配置参数: 而操作系统层面,相对 ...
- Form -- 文件上传
当我们选中文件,点击上传时即可. 而此按钮一般是一张图片覆盖了一个input标签而以.基于这个原理我们可以定制自己喜欢的样式 <div style="text-align: cente ...
- 鼠标右键添加Sublime Text
鼠标右键添加Sublime Text 参考 将sublime添加到鼠标右键 实践 1. win+R 输入regedit 2. 输入路径: 计算机\HKEY_CLASSES_ROOT\*\shell\ ...
- Ubuntu里设置python默认版本为python3(转载)
0 - 步骤 在命令行中执行下述命令: sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 sudo ...
- Mac环境下的mongodb的安装
1.安装MongoDB brew install mongodb 这个是默认安装最新版本的 mogodb,如果想安装指定版本可以先查看 mongodb 版本 brew search mongodb m ...
- Python——python读取html实战,作业7(python programming)
查看源码,观察html结构 # -*- coding: utf-8 -*- from lxml.html import parse from urllib.request import urlopen ...