首页 > 编程 > Python > 正文

python3 selenium 切换窗口的几种方法小结

2020-01-04 15:01:58
字体:
来源:转载
供稿:网友

第一种方法:

使用场景:

打开多个窗口,需要定位到新打开的窗口

使用方法:

# 获取打开的多个窗口句柄windows = driver.window_handles# 切换到当前最新打开的窗口driver.switch_to.window(windows[-1])

举例说明:

# _._ coding:utf-8 _._""":author: 花花测试:time: 2017.05.03:content: 使用第一种方法切换浏览器"""from selenium import webdriverimport time# 打开课工场网站主页【第一个窗口】driver = webdriver.Chrome()driver.get('http://www.kgc.cn/')driver.maximize_window()# 点击全部课程,进入课程库【第二个窗口】driver.find_element_by_link_text('全部课程').click()time.sleep(3)# 使用第一种方法切换浏览器【切换到第二个窗口】windows = driver.window_handlesdriver.switch_to.window(windows[-1])time.sleep(3)# 点击课程库中的某个课程,进入课程详情界面【在第二个窗口页面进行元素点击操作,来判断窗口是否切换成功】driver.find_element_by_xpath('//*[@id="yw1"]/ul/li[2]').click()time.sleep(3)# 关闭浏览器driver.quit()print('测试通过')

第二种方法:

使用场景:

打开两个窗口,需要定位到新打开的窗口

使用方法:

# 获得打开的第一个窗口句柄window_1 = driver.current_window_handle# 获得打开的所有的窗口句柄windows = driver.window_handles# 切换到最新的窗口for current_window in windows: if current_window != window_1:  driver.switch_to.window(current_window)

举例说明:

# _._ coding:utf-8 _._""":author: 花花测试:time: 2017.05.03:content: 使用第二种方法切换浏览器"""from selenium import webdriverimport timefrom selenium import webdriverimport time# 打开课工场网站主页【第一个窗口】driver = webdriver.Chrome()driver.get('http://www.kgc.cn/')driver.maximize_window()# 点击全部课程,进入课程库【第二个窗口】driver.find_element_by_link_text('全部课程').click()time.sleep(3)# 使用第二种方法切换浏览器【切换到第二个窗口】window_1 = driver.current_window_handlewindows = driver.window_handlesfor current_window in windows: if current_window != window_1:  driver.switch_to.window(current_window)time.sleep(3)# 点击课程库中的某个课程,进入课程详情界面【在第二个窗口页面进行元素点击操作,来判断窗口是否切换成功】driver.find_element_by_xpath('//*[@id="yw1"]/ul/li[2]').click()time.sleep(3)# 关闭浏览器driver.quit()print('测试通过')

两种方法的区别:

1、第一种方法比较简单,能提升整体代码的性能

2、第二种方法是大家最常用的方法,比较容易理解

以上这篇python3 selenium 切换窗口的几种方法小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持VEVB武林网。


注:相关教程知识阅读请移步到python教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表