<input class="inputDefault-_djjkz input-cIJ7To" name="password" type="password" placeholder="" aria-label="Password" autocomplete="off" maxlength="999" spellcheck="false" value="">```
^是HTML我一直在尝试
login = driver.find_element_by_xpath(".//*[@class='inputDefault-_djjkz input-cIJ7To']/div/input").click()
谢谢你的帮助
您可以使用以下代码:
driver.find_element_by_xpath("//input[@class='inputDefault-_djjkz input-cIJ7To']")
要识别可点击的元素,您可以使用以下定位器策略之一:
-
Using
css_selector
:element = driver.find_element(By.CSS_SELECTOR, "input[name='password'][aria-label='Password']")
-
使用
xpath
:element = driver.find_element(By.XPATH, "//input[@name='password' and @aria-label='Password']")
理想情况下,要识别您需要诱导WebDriverWait等待element_to_be_clickable()
的元素,您可以使用以下定位器策略中的任何一种:
-
Using
CSS_SELECTOR
:element = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input[name='password'][aria-label='Password']")))
-
Using
XPATH
:element = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//input[@name='password' and @aria-label='Password']")))
-
注意:您必须添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC