Selenium 预期条件,等到元素可交互?

Selenium Expected Conditions, Wait until element is interactable?

有没有办法绕过 selenium 中的 elementNotInteractable 异常?我用过

wait.until(ec.element_to_be_clickable())

但我的代码仍会在元素完全可交互之前尝试与它们交互。问题是我在定义等待时没有将延迟设置得足够高吗?或者有没有像

这样的函数
ec.element_to_be_interactable()

哪个检查元素是否可交互?

element_to_be_clickable()

is the expectation for for checking if an element is visible and enabled so that you can 吧。


ElementNotInteractableException

遗憾的是,没有具体的 expected_conditions as ElementNotInteractableException,它的发生可能有很多原因,其中一些是:

  • 降低超时间隔。在这些情况下,您必须增加 timeout,如下所示:

    wait = WebDriverWait(driver, 20)
    
  • 选择并调用 click() outer/parent 元素而不是子元素。

  • 一个典型的场景是针对 <input>,其中有一个相关的 <label>元素。