在访问网页时通常只打开一个选项卡,但有时会遇到多个选项卡的情况,比如在当前选项卡点击某个链接会打开一个新的选项卡来访问。selenium可以对选项卡进行操作,但不会区分窗口和选项卡
获取当前选项卡
1
| driver.current_window_handle
|
获取所有选项卡
返回一个列表
切换选项卡
1
| driver.switch_to_window(windowName)
|
windowName
:切换的选项卡名称
实例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| import time from selenium import webdriver
driver = webdriver.Chrome()
driver.get('https://www.gaoyuanqi.cn')
new_tab = driver.current_window_handle print(new_tab) time.sleep(3)
driver.execute_script('window.open()')
tab = driver.window_handles print(tab) time.sleep(3)
driver.switch_to_window(tab[1]) time.sleep(3)
driver.get('https://www.gaoyuanqi.cn/python-html-1/#more') time.sleep(3)
driver.switch_to_window(tab[0]) time.sleep(3)
driver.get('https://www.gaoyuanqi.cn/docker-compose/#more')
time.sleep(3)
driver.quit()
|