selenium窗口切换和关闭指定窗口

文章介绍了如何使用SeleniumPython库来管理浏览器窗口。通过driver.window_handles获取窗口句柄,利用switch_to.window切换和关闭窗口。当需要关闭非当前窗口时,需先保存初始窗口句柄,点击新窗口后,再调用close()方法关闭新窗口。在关闭后,可能需要重新定位到原来的窗口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ws=driver.window_handles[]
driver.switch_to.window(ws)
ws=driver.window_handles[]
获得指定索引窗口句柄
driver.switch_to.window(ws)
将视窗切换到指定窗口
然后,如果想关闭窗口,
使用 driver.close()

但有一个问题就是它会默认关闭新打开的窗口而且close函数无法传入其他参数

那么该如何关闭其他窗口呢?以某度网站为例

点击百度图标打开另一窗口

使用如下代码进行关闭

会发现新窗口被关闭,如图一所示

 

 将代码改成这样,就能做到关闭指定窗口的操作,效果如下

 

此外,在获取指定窗口句柄之后,如果要对其他窗口进行操作,还需要用  driver.switch_to.window(driver.window_handles[]) 重新定位到你需要操作的窗口

最后附上源码

driver=webdriver.Chrome()
driver.get('http://www.baidu.com/')
driver.find_element_by_xpath('//*[@id="lg"]/map/area').click()
ws=driver.window_handles[0]
driver.switch_to.window(ws)
time.sleep(1)
driver.close()

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值