selenium 之 web页面多窗口切换

在web测试过程中,经常会打开多个窗口,selenium无法直接对新页面元素进行定位,需要切换窗口操作。
在web应用中,每一个窗口都有一个对应的唯一句柄来进行标识,如果我们切换窗口,则只需要获取新窗口的句柄,然后切换句柄即可。

获取当前句柄:driver.current_window_handle
获取所有句柄:driver.window_handles
切换句柄:driver.switch_to.window(句柄号)或者driver.switch_to_window(句柄号)

示例:以hao123网站为例,点击超链接hao123推荐,并单击娱乐板块。

# coding = utf-8

from selenium import webdriver

driver = webdriver.Chrome()
driver.get('https://www.hao123.com/')
# 获取当前窗口句柄
current_handle = driver.current_window_handle
print(current_handle)
# 单机超链接
driver.find_element_by_link_text('hao123推荐').click()
# 获取所有窗口句柄
handles = driver.window_handles
print(handles)
# 切换到新窗口
driver.switch_to.window(handles[1])
driver.find_element_by_link_text('娱乐').click()
print(driver.current_window_handle)
driver.quit()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值