selenium python浏览器多窗口处理代码示例


Posted in Python onJanuary 15, 2018

本文主要研究的是selenium python浏览器多窗口处理的相关内容,分享了操作实例代码,具体如下:

#!/usr/bin/python
# -*- coding: utf-8 -*-
__author__ = 'zuoanvip'
#在测试过程中有时候会遇到出现多个浏览器窗口的情况,这时候我们可以通过窗口的句柄来操作不同窗口的元素
from selenium import webdriver
import os
import time

driver =webdriver.Firefox()
driver.get('http://www.baidu.com')


#获得当前窗口的句柄
nowwhandle = driver.current_window_handle

#打开注册新窗口
driver.find_element_by_name('tg_reg').click()

#获取所有窗口的句柄
allhandles = driver.window_handles

#循环判断窗口是否为当前窗口

for handle in allhandles:
  if handle != nowwhandle:
    driver.switch_to_window(handle)
    print 'Now register window!'
    #切换到邮箱注册标签
    driver.find_element_by_id('mailRegTab').click()
    time.sleep(5)
    driver.close()

#返回原先到的窗口
driver.switch_to_window(nowwhandle)

driver.find_element_by_id('kw').send_keys(u'注册成功')
driver.quit()

执行过程为:首先通过nowhandle获得当前窗口的句柄,随后打开注册窗口;通过allhandles获得所有窗口的句柄;对句柄进行循环遍历;判断窗口是否为nowhandle,如果不是则获得当前窗口的句柄,对当前页面 的元素进行操作,最后返回nowhandle

总结

以上就是本文关于selenium python浏览器多窗口处理代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Python字符串和文件操作常用函数分析
Apr 08 Python
python字符串中的单双引
Feb 16 Python
Python enumerate索引迭代代码解析
Jan 19 Python
python对日志进行处理的实例代码
Oct 06 Python
Python实现的对本地host127.0.0.1主机进行扫描端口功能示例
Feb 15 Python
python实现顺时针打印矩阵
Mar 02 Python
python制作抖音代码舞
Apr 07 Python
详解如何设置Python环境变量?
May 13 Python
PyCharm 配置远程python解释器和在本地修改服务器代码
Jul 23 Python
Python搭建代理IP池实现存储IP的方法
Oct 27 Python
python pprint模块中print()和pprint()两者的区别
Feb 10 Python
基于Python的图像阈值化分割(迭代法)
Nov 20 Python
100行python代码实现跳一跳辅助程序
Jan 15 #Python
tornado 多进程模式解析
Jan 15 #Python
200 行python 代码实现 2048 游戏
Jan 12 #Python
一篇文章快速了解Python的GIL
Jan 12 #Python
Python获取当前公网ip并自动断开宽带连接实例代码
Jan 12 #Python
python SSH模块登录,远程机执行shell命令实例解析
Jan 12 #Python
python opencv实现任意角度的透视变换实例代码
Jan 12 #Python
You might like
phpfans留言版用到的数据操作类和分页类
2007/01/04 PHP
php实现的获取网站备案信息查询代码(360)
2013/09/23 PHP
PHP 导出Excel示例分享
2014/08/18 PHP
PHP+apc+ajax实现的ajax_upload上传进度条代码
2016/01/25 PHP
Yii2创建表单(ActiveForm)方法详解
2016/07/23 PHP
PHP与Web页面的交互示例详解二
2020/08/04 PHP
Swoole源码中如何查询Websocket的连接问题详解
2020/08/30 PHP
一段利用WSH修改和查看IP配置的代码
2008/05/11 Javascript
javascript面向对象之Javascript 继承
2010/05/04 Javascript
仿微博字符限制效果实现代码
2012/04/20 Javascript
jQuery获取样式中的背景颜色属性值/颜色值
2012/12/17 Javascript
jqGrid增加时--判断开始日期与结束日期(实例解析)
2013/11/08 Javascript
jquery 获取 outerHtml 包含当前节点本身的代码
2014/10/30 Javascript
javascript中去除数组重复元素的实现方法【实例】
2016/04/12 Javascript
JS使用单链表统计英语单词出现次数
2016/06/16 Javascript
基于BootStrap的Metronic框架实现页面链接收藏夹功能按钮移动收藏记录(使用Sortable进行拖动排序)
2016/08/29 Javascript
node+koa2+mysql+bootstrap搭建一个前端论坛
2018/05/06 Javascript
微信小程序使用swiper组件实现类3D轮播图
2018/08/29 Javascript
基于layui内置模块(element常用元素的操作)
2019/09/20 Javascript
将Vue组件库更换为按需加载的方法步骤
2020/05/06 Javascript
JS中循环遍历数组的四种方式总结
2021/01/23 Javascript
[06:07]DOTA2-DPC中国联赛 正赛 Ehome vs VG 选手采访
2021/03/11 DOTA
跟老齐学Python之Python文档
2014/10/10 Python
Python利用多进程将大量数据放入有限内存的教程
2015/04/01 Python
python基于BeautifulSoup实现抓取网页指定内容的方法
2015/07/09 Python
win10下Python3.6安装、配置以及pip安装包教程
2017/10/01 Python
matplotlib作图添加表格实例代码
2018/01/23 Python
解决pycharm 工具栏Tool中找不到Run manager.py Task的问题
2019/07/01 Python
python实现一行输入多个值和一行输出多个值的例子
2019/07/16 Python
python+mysql实现个人论文管理系统
2019/10/25 Python
自动化工程专业个人应聘自荐信
2013/09/26 职场文书
技校毕业生自荐信范文
2014/03/07 职场文书
服务标兵事迹材料
2014/05/04 职场文书
房屋租赁协议书
2014/10/18 职场文书
群众路线教育实践活动总结
2014/10/30 职场文书
漫改真人电影「萌系男友是燃燃的橘色」公开先导视觉图
2022/03/21 日漫