在 Selenium 中,必須切換到對應的 iframe 才能與其中駐留的元素互動。然而,經常需要在任何 iframe 中定位元素,包括嵌套的 iframe。
切換框架有以下三種方法:
顯式循環影格不建議。相反,使用 WebDriverWait 和 frame_to_be_available_and_switch_to_it 條件,等待所需的幀可用並切換到它。
from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC # Switch to iframe by ID WebDriverWait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it(By.ID, "iframe_id"))
對於動態載入的元素或 iframe,請考慮使用WebDriverWait 具有 visibility_of_element_ located 條件,等待元素可見元素可見。
雖然不能明確地選擇跨元素無需切換幀,使用 WebDriverWait 和特定於幀的條件為這種情況提供了可靠且靈活的方法。
以上是如何在 Selenium 中跨多個 Iframe 高效地選擇 HTML 元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!