📅  最后修改于: 2023-12-03 14:40:52.465000             🧑  作者: Mango
driver.getwindowhandle()
和 driver.getwindowhandles()
的区别driver.getwindowhandle()
和 driver.getwindowhandles()
是 WebDriver API 中用于获取窗口句柄的方法。窗口句柄是用来唯一标识一个浏览器窗口的字符串。下面是它们的主要区别:
driver.getwindowhandle()
:
# 获取当前活动窗口的句柄
current_window = driver.getwindowhandle()
driver.getwindowhandles()
:
# 获取所有打开窗口的句柄
all_windows = driver.getwindowhandles()
在实际应用中,我们通常先使用 driver.getwindowhandles()
获取到所有窗口的句柄集合,然后可以根据需要通过循环或索引来切换不同的窗口,最后再使用 driver.getwindowhandle()
获取当前操作窗口的句柄。
例如,想要切换到某个新打开的窗口并操作其中的元素,可以使用以下代码示例:
# 获取所有打开窗口的句柄
all_windows = driver.getwindowhandles()
# 切换到第二个窗口
driver.switch_to.window(all_windows[1])
# 在第二个窗口中进行操作
# ...
# 切换回第一个窗口
driver.switch_to.window(all_windows[0])
这样,通过合理使用 driver.getwindowhandle()
和 driver.getwindowhandles()
可以方便地处理多个浏览器窗口之间的操作。