Selenium python(webdrivers):如何处理具有多个互连窗口的案例

时间:2017-01-05 23:28:53

标签: python selenium

我正在寻找一种方法来跟踪构建在多个互连窗口上的应用程序。

基本上我有快乐的webdriver运行,并启动打开窗口的应用程序;我可以访问它的元素,一切都很好。

但是应用程序的另一部分是单独打开的,这会导致主视图关闭。它仍然是相同的应用程序,但主窗口被销毁,新的窗口被创建。

令人遗憾的是,webdriver不再能够找到上下文的问题(因为正确地说,它附加的应用程序已被破坏)。

内容shell出现空白,驱动程序是OSX上的Chromedriver 2.23.40

有没有办法用Selenium python webdriver处理这种情况?

1 个答案:

答案 0 :(得分:0)

Selenium有一个switch_to方法来控制切换活动窗口。

# Get window handles
windows = driver.window_handles
print("Number of window handles: {0}".format(len(windows))
print("Current window handle: {0}".format(driver.current_window_handle)

# Switch that most recently opened one
driver.switch_to.window(windows[-1])
print("New window handle: {0}".format(driver.current_window_handle)