如何使用 Selenium WebDriver for python 在瀏覽器上開啟新視窗?


我們可以用 Selenium webdriver 在瀏覽器中開啟一個新視窗。有多種方法可以實現此目的。Selenium 可以使用 execute_script() 方法在 Javascript 中執行命令,這是一種開啟新視窗的方法之一。然後,我們將使用 switch_to.window() 方法來一次將焦點轉移到特定視窗。

語法 −

driver.execute_script("window.open('');")

示例

使用 execute_script() 方法的程式碼實現。

from selenium import webdriver
urlA = "https://tutorialspoint.tw/about/about_careers.htm"
urlB = "https://tutorialspoint.tw/questions/index.php"
driver = webdriver.Chrome (executable_path="C:\chromedriver.exe")
# maximize with maximize_window()
driver.maximize_window()
driver.get(urlA)
print("Page Title of urlA : " + driver.title)
# open new window with execute_script()
driver.execute_script("window.open('');")
# switch to new window with switch_to.window()
driver.switch_to.window(driver.window_handles[1])
driver.get(urlB)
print("Page Title of urlB : " + driver.title)
# close window in focus
driver.close()
# switch back to old window with switch_to.window()
driver.switch_to.window(driver.window_handles[0])
print("Current Title: " + driver.title)
driver.close()

輸出

我們還可以透過同時呼叫兩個驅動會話在新視窗中開啟瀏覽器。

示例

程式碼實現。

from selenium import webdriver
urlA = "https://tutorialspoint.tw/about/about_careers.htm"
urlB = "https://tutorialspoint.tw/questions/index.php"
driver = webdriver.Chrome (executable_path="C:\chromedriver.exe")
# opening another driver session
s_driver = webdriver.Chrome (executable_path="C:\chromedriver.exe")
# maximize with maximize_window()
driver.maximize_window()
s_driver.maximize_window()
driver.get(urlA)
s_driver.get(urlB)
print(driver.title)
print(s_driver.title)
driver.quit()

輸出

更新時間: 2020 年 8 月 28 日

7K+ 次瀏覽

開啟您的 職業生涯

完成課程獲得認證

入門
廣告