在页面操作过程中有时候点击某个链接会弹出新的窗口,这时就需要主机切换到新打开的窗口上进行操作。WebDriver提供了switch_to.window()方法,可以实现在不同的窗口之间切换。
以百度首页和百度注册页为例,在两个窗口之间的切换。
多窗口切换1.py
# coding=utf-8 from selenium import webdriver import time # 访问百度 driver = webdriver.Chrome() driver.get("http://www.baidu.com") # 获取百度搜索窗口句柄 search_windows = driver.current_window_handle driver.find_element_by_xpath('/html/body/div[1]/div[1]/div/div[3]/a[7]').click() time.sleep(3) driver.find_element_by_xpath('/html/body/div[4]/div[2]/div[2]/div/div/div/div/div/div[3]/a').click() # 获取打开所有窗口句柄 all_handles = driver.window_handles # 进入注册窗口 for handle in all_handles: if handle != search_windows: driver.switch_to_window(handle) print("now regester window") driver.find_element_by_id(&#