在页面操作的时候,有时候会出现新的弹出窗口,这时就需要主机切换到新打开的窗口中进行操作,switch_to_window()
方法,可以实现不同窗口之间切换。
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.implicitly_wait(10)
driver.get("http://www.baidu.com")
#获得百度搜索窗口句柄
search_windows = driver.current_window_handle
driver.find_element_by_link_text('登录').click()
driver.find_element_by_link_text('立即注册').click()
#获得当前所有打开的窗口的句柄
all_handles = driver.window_handles
#进入注册窗口
for handle in all_handles:
if handle != search_windows:
driver.switch_to_window(handle)
print('switch to register window')
driver.find_element_by_name("account").send_keys('username')
driver.find_element_by_name("password").send_keys('password')