首頁 >後端開發 >Python教學 >Selenium 的 WebDriverWait 如何確保動態元素在繼續之前存在、可見且可互動?

Selenium 的 WebDriverWait 如何確保動態元素在繼續之前存在、可見且可互動?

Susan Sarandon
Susan Sarandon原創
2024-12-26 03:02:09551瀏覽

How Can Selenium's WebDriverWait Ensure Dynamic Elements Are Present, Visible, and Interactable Before Proceeding?

Selenium:動態等待元素存在、可見且可互動

使用動態Web 元素時,避免使用變得至關重要靜態睡眠間隔並利用更有效的等待技術。本文示範如何利用 Selenium 的 WebDriverWait 動態等待元素出現、可見且可交互,然後再執行操作。

在您的情況下,您需要等到 anonemail 類別出現才能繼續。要使用WebDriverWait 實現此目的,請按照以下步驟操作:

  1. 導入WebDriverWait 和ExpectedConditions 模組:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
  2. CSS選擇器這元素:

    css_selector = ".anonemail"
  3. 建立WebDriverWait 對象,指定超時間隔(例如20 秒):

    wait = WebDriverWait(browser, 20)
  4. 使用🎜>wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, css_selector)))

檢測到元素後,可以進行其他交互,例如提取屬性的值:
email = browser.find_element_by_css_selector(css_selector).get_attribute("value")

透過利用WebDriverWait,您可以確保您的腳本僅在所需元素準備就緒時執行操作,從而避免不可靠的睡眠間隔。

以上是Selenium 的 WebDriverWait 如何確保動態元素在繼續之前存在、可見且可互動?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn