其他分享
首页 > 其他分享> > selenium 新窗口切换

selenium 新窗口切换

作者:互联网

一、背景

  当前窗口的一个点击操作,导致弹出了另一个窗口,而且接下来的操作要去另外一个窗口执行。

二、操作原理

  首先,获取到目前打开的所有窗口句柄。新的窗口,就是窗口句柄列表的最后一个窗口。 窗口句柄列表 wins= driver.window_handles

三、切换窗口

  driver.switch_to.window(窗口句柄)

四、总结

  1. 首先:wins = driver.window_handles   获取当前所有窗口句柄。wins 是一个列表。
  2. 再切换到最新的窗口:driver.switch_to.windows(wins[-1])。

五、代码示例

  from selenium import webdriver
  from selenium.webdriver.common.by import By
  from selenium.webdriver.support.wait import WebDriverWait
  from selenium.webdriver.support import expected_conditions as EC
  loc = (By.XPATH,'//a[text()='腾讯课堂']')
  wait = WebDriverWait(driver,10)
  wait.until(EC.visibility_of_element_located(loc))
  wins = driver.window_handles
  print("获取当前句柄{}".format(wins))
  driver.find_element(*loc).click()
  driver.switch_to.window(wins[-1])
  print("获取打开新窗口之后的句柄{}".format(wins))
  driver.find_element(By.ID,'kw').click()

 

标签:窗口,wins,driver,切换,window,新窗口,句柄,selenium
来源: https://www.cnblogs.com/Sagittarius23/p/14406790.html