命题
多窗口进行切换
思路
- 打开百度
- 打开优快云博客(JS)
- 获取当前句柄(默认当前句柄为第一个界面)
- 所有窗口句柄存为列表
- 各句柄间进行切换
from selenium import webdriver
import time
#设置变量
url="http://www.baidu.com"
#打开浏览器
br=webdriver.Chrome()
br.maximize_window()
#打开百度
br.get(urla)
#通过JS打开新窗口
js='window.open("https://blog.youkuaiyun.com");'
br.execute_script(js)
time.sleep(3)
#获取当前句柄(百度)
handlea=br.current_window_handle
#获取所有句柄
handles=br.window_handles
print(handles)
#获取csdn句柄
for handle in handles:
if handle != handlea:
handleb = handle
# 输出优快云句柄
print('switch to ', handleb)
br.switch_to.window(handleb)
time.sleep(3)
#关闭优快云界面
br.close()
# 切换回百度窗口
print('switch Baidu ',handlea)
br.switch_to.window(handlea)
time.sleep(3)
#关闭浏览器
br.quit()