代码试验:
voucher_input = WebDriverWait(driver, 10).until(EC.presence_of_element_located ((By.NAME, "voucher")))
我尝试在代码中更改输入字段的名称,但仍然无法修复
btqmn9zl1#
假设元素的相关HTML为:
<input name="voucher" ...>
要向元素发送 * 字符序列 * 而不是presence_of_element_located(),需要为element_to_be_clickable()引入WebDriverWait,可以使用以下locator strategies之一:
voucher_input = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.NAME, "voucher")))
voucher_input = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input[name='voucher']")))
voucher_input = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//input[@name='voucher']")))
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC
qmb5sa222#
找到输入字段后,可以使用send_keys()方法向其中输入文本。
voucher_input = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, "voucher"))) voucher_input.send_keys("your text here")
2条答案
按热度按时间btqmn9zl1#
假设元素的相关HTML为:
要向元素发送 * 字符序列 * 而不是presence_of_element_located(),需要为element_to_be_clickable()引入WebDriverWait,可以使用以下locator strategies之一:
qmb5sa222#
找到输入字段后,可以使用send_keys()方法向其中输入文本。