1.關(guān)閉瀏覽器全部標(biāo)簽頁(yè)
driver.quit()
2.關(guān)閉當(dāng)前標(biāo)簽頁(yè)(從標(biāo)簽頁(yè)A打開(kāi)新的標(biāo)簽頁(yè)B,關(guān)閉標(biāo)簽頁(yè)A)
driver.close()
3.關(guān)閉當(dāng)前標(biāo)簽頁(yè)(從標(biāo)簽頁(yè)A打開(kāi)新的標(biāo)簽頁(yè)B,關(guān)閉標(biāo)簽頁(yè)B)
可利用瀏覽器自帶的快捷方式對(duì)打開(kāi)的標(biāo)簽進(jìn)行關(guān)閉
Firefox自身的快捷鍵分別為:
Ctrl+t新建tab
Ctrl+w關(guān)閉tab
Ctrl+Tab /Ctrl+Page_Up ? ? ?定位當(dāng)前標(biāo)簽頁(yè)的下一個(gè)標(biāo)簽頁(yè)
Ctrl+Shift+Tab/Ctrl+Page_Down ? 定位當(dāng)前標(biāo)簽頁(yè)的前一個(gè)標(biāo)簽頁(yè)
Ctrl+[數(shù)字鍵1-8] 定位所有標(biāo)簽頁(yè)中最前的第[1-8]個(gè)
Ctrl+數(shù)字鍵9 ? ? ?定位最后一個(gè)標(biāo)簽頁(yè)
注:如果是在一些Linux發(fā)行版系統(tǒng)中,比如Ubuntu,需要將Ctrl鍵換成Alt鍵
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
#新建標(biāo)簽頁(yè)
ActionChains(browser).key_down(Keys.CONTROL).send_keys("t").key_up(Keys.CONTROL).perform()
# 關(guān)閉標(biāo)簽頁(yè)
ActionChains(browser).key_down(Keys.CONTROL).send_keys("w").key_up(Keys.CONTROL).perform()
4.標(biāo)簽頁(yè)切換
from selenium import webdriver
browser=webdriver.Firefox()
browser.get('xxxxx')
# 獲取當(dāng)前窗口句柄(窗口A)
handle = browser.current_window_handle
# 打開(kāi)一個(gè)新的窗口
browser.find_element_by_id('xx').click()
# 獲取當(dāng)前所有窗口句柄(窗口A、B)
handles = browser.window_handles
# 對(duì)窗口進(jìn)行遍歷
for newhandle in handles:
# 篩選新打開(kāi)的窗口B
if newhandle!=handle:
# 切換到新打開(kāi)的窗口B
browser.switch_to_window(newhandle)
# 在新打開(kāi)的窗口B中操作
browser.find_element_by_id('xx').click()
# 關(guān)閉當(dāng)前窗口B
browser.close()
#切換回窗口A
browser.switch_to_window(handles[0])