最近開始在 python 中使用 selenium,到目前為止,我唯一遇到問題的元素是動態下拉串列。例如在Subjects 和 State and City下的 網頁上。如何處理這些在 DOM 中不可見的元素。請有人可以告訴我他們將如何解決上面提到的例子。
對于 subjets,它在這條線上失敗:
類 SwitchToFrame():
def test1(self):
baseUrl = "https://demoqa.com/automation-practice-form"
driver = webdriver.Chrome()
driver.get(baseUrl)
wait = WebDriverWait(wait = WebDriverWait(driver, timeout=10, poll_frequency=1)
element = wait.until(expected_conditions.element_to_be_clickable((By.XPATH, "//div[@id='subjectsContainer']/div")))
element.send_keys("English")
uj5u.com熱心網友回復:
在這里,我在輸入英文后繼續單擊主題中的第一個選項。此外,如果您確實檢查了 driver.page_source,您實際上可以看到里面的元素。它在處理輸入標簽后消失。
wait=WebDriverWait(driver, 10)
driver.get("https://demoqa.com/automation-practice-form")
element = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#subjectsInput")))
element.send_keys("English")
print(driver.page_source)
elem=wait.until(EC.element_to_be_clickable((By.ID, "react-select-2-option-0")))
driver.execute_script("arguments[0].click()", elem)
進口
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/355812.html
