1. 程式人生 > >python selenium 對瀏覽器標籤頁進行關閉和切換

python selenium 對瀏覽器標籤頁進行關閉和切換

1.關閉瀏覽器全部標籤頁

driver.quit()

2.關閉當前標籤頁(從標籤頁A開啟新的標籤頁B,關閉標籤頁A)

driver.close()

3.關閉當前標籤頁(從標籤頁A開啟新的標籤頁B,關閉標籤頁B)

可利用瀏覽器自帶的快捷方式對開啟的標籤進行關閉

Firefox自身的快捷鍵分別為:

Ctrl+t 新建tab

Ctrl+w 關閉tab

 Ctrl+Tab /Ctrl+Page_Up      定位當前標籤頁的下一個標籤頁

 Ctrl+Shift+Tab/Ctrl+Page_Down   定位當前標籤頁的前一個標籤頁

 Ctrl+[數字鍵1-8] 定位所有標籤頁中最前的第[1-8]個

 Ctrl+數字鍵9      定位最後一個標籤頁

注:如果是在一些Linux發行版系統中,比如Ubuntu,需要將Ctrl鍵換成Alt鍵

from selenium import webdriver

from selenium.webdriver.common.keys import Keys

from selenium.webdriver.common.action_chains import ActionChains

#新建標籤頁

ActionChains(browser).key_down(Keys.CONTROL).send_keys("t").key_up(Keys.CONTROL).perform()

# 關閉標籤頁

ActionChains(browser).key_down(Keys.CONTROL).send_keys("w").key_up(Keys.CONTROL).perform()

4.標籤頁切換

from selenium import webdriver


browser=webdriver.Firefox()

browser.get('xxxxx')

# 獲取當前視窗控制代碼(視窗A)

handle = browser.current_window_handle

# 開啟一個新的視窗

browser.find_element_by_id('xx').click()

# 獲取當前所有視窗控制代碼(視窗A、B)

handles = browser.window_handles

# 對視窗進行遍歷

for newhandle in handles:

    # 篩選新開啟的視窗B

    if newhandle!=handle:

# 切換到新開啟的視窗B

browser.switch_to_window(newhandle)

# 在新開啟的視窗B中操作

browser.find_element_by_id('xx').click()

# 關閉當前視窗B

browser.close()

#切換回視窗A

browser.switch_to_window(handles[0]) 

參考連結: https://www.cnblogs.com/mapu/p/8533817.html