selenium 切换浏览器窗口,selenium 切换页面
在实际工作中,我们经常会遇到页面切换的情况。就比如当点击了某个功能的按钮后,浏览器出现了新的标签页,需要在这些标签页之间进行切换。本文将利用硒实现这一功能,需要的可以参考一下
目录
硒实现浏览器标签页句柄的切换浏览器标签页本地文件准备利用硒实现浏览器页面的切换在实际工作中,我们经常会遇到页面切换的情况。就比如当点击了某个功能的按钮后,浏览器出现了新的标签页,需要在这些标签页之间进行切换。要如何通过硒来实现这样的场景呢?这就是我们今天要学习的内容。
selenium 实现浏览器标签页句柄的切换
浏览器标签页本地文件准备
这一段纯粹是因为内容太少,拿来凑字数的.
同样的,这里所使用的是我们本地的multi.html文件,点击该文件的"注册",会跳转至www.baidu.com。
《multi.html》文件的前端代码如下:
超文本标记语言
头
meta http-equiv= content-type content= text/html;charset=utf-8 /
标题形式/标题
脚本类型= text/JavaScript async= src= jquery。量滴js /脚本
link href= bootstrap-combined。量滴CSS rel=外部no follow rel=样式表/
脚本src= bootstrap。量滴js /脚本
/头
身体
h3简单登录表单/h3
form class= form-水平
div class=控制组
"输入邮件"电子邮件/标签的标签class="控制标签"
div class=控件
输入类型= text id= input Email placeholder= Email name= Email
/div
/div
div class=控制组
对于=输入密码密码/标签,标签class=control-label
div class=控件
输入类型=密码id=输入密码占位符=密码name=密码
/div
/div
div class=控制组
div class=控件
label class=checkbox
输入类型=复选框记住我
/标签
按钮type=submit class=btn 登录/按钮
a href= https://www。百度一下。com rel=外部无follow target= _ blank 注册/a
/div
/div
/表单
/body
/html
利用 selenium 实现浏览器页面的切换
获取浏览器标签页句柄方法如下:
当前窗口句柄获取当前标签页的句柄
窗口_句柄获取所有标签页的句柄
代码示例如下:
#编码:utf-8
从时间进入睡眠
从硒导入网驱动程序
driver=webdriver .铬()#启动铬浏览器的驾驶员
司机。maximize _ window()# Chrome浏览器最大化
司机。get( file :///Users/workspace/WEB _ TEST _ HTML/multi。HTML )#打开本地的multi.html的文件
睡眠(1)
first _ window=driver。当前窗口句柄#通过当前窗口句柄属性获取当前标签页的句柄
司机。find _ element _ by _ link _ text( register ).单击()#通过链接_文本方法定位到"注册"元素,执行点击操作(跳转百度)
睡眠(2)
all _ windows=driver。窗口句柄#通过窗口_句柄属性获取当前所有标签页的句柄
用于在all_windows: #中处理为循环判断当前句柄是否是第一个窗口句柄,如果不是则跳转至该句柄(该句柄为百度页面的句柄)
如果处理!=first_window:
driver . switch _ to . windows(句柄)
打印(已跳转至百度 标签页的句柄)
睡眠(1)
driver.find_element_by_id(kw ).send_keys(渴望力量的哈士奇) # 在百度句柄页面的搜索框输入要百度的内容渴望力量的哈士奇
睡眠(1)
driver.find_element_by_id(su ).单击()#点击百度一下 按钮
睡眠(2)
司机。切换到。windows(first _ window)#跳转至multi.html的页面的句柄
email _ element=driver。find _ element _ by _ XPath(//*[@ id=输入电子邮件])#通过语言定位电子邮件输入框。
Email _ element.send _ keys(用户名)#在电子邮件输入框中输入用户名
睡眠(1)
Email_element.clear() #清除电子邮件输入框的内容。
睡眠(1)
email _ element . send _ keys( admin )#在电子邮件输入框中输入 admin
driver . find _ element _ by _ XPath(/*[@ id=输入密码])。send _ keys (123456) #密码输入框,输入 123456
睡眠(1)
driver . find _ element _ by _ XPath(/html/body/form/div[3]/div/button )。单击()
睡眠(1)
driver.quit()
运行结果如下:
关于Python Selenium的浏览器标签切换的这篇文章到此为止。关于Python Selenium的浏览器选项卡切换的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。