我正在使用Selenium中的Firefox选项卡和窗口。
我的代码在Firefox窗口中打开一个页面。然后,它单击一个导致弹出窗口显示的链接。之后:
for wh in driver.window_handles:
print(wh)
...给出以下输出:
2147483649
2147483704
...,其中2147483649
对应于开始页面中打开的内容,2147483704
对应于弹出窗口。
然后,代码单击此弹出窗口中的链接,这将导致在窗口中打开一个新选项卡,并在起始页中将其打开。然后:
for wh in driver.window_handles:
print(wh)
...给出以下输出:
2147483649
2147483704
再次...,即使打开了新标签。请注意,新打开的标签页不存在。
然后代码关闭窗口:
driver.close()
然后这个:
for wh in driver.window_handles:
print(wh)
...给出以下输出:
2147483649
2147483707
...,其中2147483649
对应于起始页中打开的内容,2147483707
对应于通过单击弹出窗口中的链接而打开的标签页(我已经检查了它)
这种行为对我来说是意想不到的。
现在,主要问题是,如何切换到通过单击弹出窗口中的链接而打开的选项卡,而不关闭弹出窗口?