在Selenium for Python 中切換到新視窗
在Selenium for Python 中,處理多個瀏覽器視窗可能會帶來挑戰。當您按一下連結後開啟新視窗時,焦點仍保留在原始視窗上,從而阻止在新視窗中執行操作。要解決這個問題,您需要將驅動程式的焦點切換到新視窗。
確定視窗的名稱
driver.switch_to.window() 方法需要視窗的名稱。但是,Selenium 不提供直接獲取此名稱的方法。相反,您可以使用 window_handles 屬性來取得視窗句柄列表,這些句柄是唯一識別碼。
將焦點切換到新視窗
以下是以下步驟如何將焦點切換到新視窗:
範例程式碼
以下 Python 程式碼說明如何處理多個瀏覽器視窗並將焦點切換到新視窗:
import unittest from selenium import webdriver class GoogleOrgSearch(unittest.TestCase): def setUp(self): self.driver = webdriver.Firefox() def test_google_search_page(self): driver = self.driver driver.get("http://www.cdot.in") window_before = driver.window_handles[0] print(window_before) driver.find_element_by_xpath("//a[@href='http://www.cdot.in/home.htm']").click() window_after = driver.window_handles[1] driver.switch_to.window(window_after) print(window_after) driver.find_element_by_link_text("ATM").click() driver.switch_to.window(window_before) def tearDown(self): self.driver.close() if __name__ == "__main__": unittest.main()
以上是如何在 Selenium for Python 中切換到新視窗?的詳細內容。更多資訊請關注PHP中文網其他相關文章!