我正在尝试在网站上的文本字段中输入字符串,这给我一个错误。
我尝试获取确切的元素,它也是父元素。对于每一个,我都尝试使用XPath,ID和名称来定位它们,但是没有成功。
这是我尝试过的一些例子。
<td><input type="text" name="username" autofocus="" required="" id="id_username" maxlength="254">
<div class="formvalidate_spinner formvalidate_hidden" id="username_spinner">
<img src="/static/formvalidateassets/spinner.gif">
</div>
</td>
driver.find_element_by_xpath('//*[@id="main"]/div[3]/div/form/fieldset/table/tbody/tr[1]/td').send_keys("username").send_keys("username")
driver.find_element_by_xpath('//*[@id="id_username"]').send_keys("username")
driver.find_element_by_id('id_username').send_keys("username")
我希望在输入字段中插入一个给定的用户名,但是无论我如何尝试,给出的错误都是selenium.common.exceptions.ElementNotInteractableException:消息:元素不可交互
答案 0 :(得分:0)
使用WebDriverWait
并等待element_to_be_clickable
并插入username
WebDriverWait(driver,30).until(EC.element_to_be_clickable((By.ID,'id_username'))).send_keys('username')
您需要导入以下内容以执行上述代码。
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC