在Selenium 中的嵌套iframe 中選擇HTML 元素
與Selenium 中的嵌套iframe 中的嵌套元素進行交互需要在選擇目標之前切換到適當的iframe元素。預設的 Selenium 焦點保留在頂部窗口,如果沒有明確切換到所需的 iframe,則無法與其中的元素進行互動。
框架切換方法
要切換到特定的iframe,Selenium 提供了三個選項:
範例:
# Switch to an iframe by its name driver.switch_to.frame("iframe_name") # Select an element within the iframe element = driver.find_element_by_css_selector(".element_selector") # Switch back to the main frame driver.switch_to.default_content()
更好的方法:
WebDriverWait 類別frame_to_be_available_and_switch_to_it() 預期條件。此條件等待目標 iframe 變得可用並自動切換到它。範例:
# Wait for the iframe with the specified ID to become available and switch to it WebDriverWait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it((By.ID, "iframe_id"))) # Select an element within the iframe element = driver.find_element_by_css_selector(".element_selector") # Switch back to the main frame driver.switch_to.default_content()
其他注意事項
了解更多詳細資訊以及Selenium中iframe處理的討論,參考:
[方法在iframe下處理#document](htt ps://stackoverflow.com/questions/10030766/selenium-webdriver-find-element-within-iframe)以上是如何使用 Selenium 選擇嵌套 iframe 內的 HTML 元素?的詳細內容。更多資訊請關注PHP中文網其他相關文章!