selenium多个窗口切换

时间:2021-10-08 18:11:08

浏览器里面支持多窗口打开,例如这样:

selenium多个窗口切换

html里面写了:

target="_blank"

造成新打开一个窗口,但是selenium不会自动跳转到新的串口,需要自己切换:

# 你打开的浏览器,谷歌
browser = webdriver.Chrome()
# 你中间的操作
...
# 获取当前浏览器所有的窗口
handles = browser.window_handles
# handles为一个数组:handles = [窗口1,窗口2,...]
# 窗口切换,切换为新打开的窗口
browser.switch_to_window(handles[-1])
# 切换回最初打开的窗口
browser.switch_to_window(handles[0])
# 新增一个窗口打开url
newwindow='window.open("https://www.baidu.com");'
browser.execute_script(newwindow)
# 关闭当前窗口
browser.close()
# 关闭所有窗口
browser.quit()