错误selenium.common.exceptions.ElementNotInteractableException:消息:元素不可交互

时间:2020-05-25 10:40:30

标签: selenium

我尝试按元素名称搜索: login_form = driver.find_element_by_name('用户名') login_form.click()

收到此错误:

selenium.common.exceptions.ElementNotInteractableException:消息:元素不可交互

该如何解决?

3 个答案:

答案 0 :(得分:0)

您必须引入明确的等待,直到该元素可交互之后再单击它。试试这个:

login_form = WebDriverWait(driver, 20).until(
EC.element_to_be_clickable((By.NAME, "username")))

login_form.click();

注意:在代码中添加以下导入内容:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

答案 1 :(得分:0)

发生此错误是由于找不到正确的元素,因为页面未正确加载。因此,您可以花一些时间使用以下任一语句来加载页面。

1)time.sleep(10) 2)driver.implicitly_wait(10)

import time

user_name = "demo.wxyz@gmail.com"
password = "xyz"

login = driver.find_element_by_id("LoginForm_email")
loing_passwd = driver.find_element_by_id("LoginForm_password")
time.sleep(10)
driver.implicitly_wait(10)
login.send_keys(user_name)
login_passwd.send_keys(password)

答案 2 :(得分:0)

我解决了:

import time

time.sleep(2)