首页 >后端开发 >Python教程 >为什么 WebDriverWait 无法在新窗口中查找元素?

为什么 WebDriverWait 无法在新窗口中查找元素?

Linda Hamilton
Linda Hamilton原创
2024-12-26 10:57:09712浏览

Why is WebDriverWait Failing to Find Elements in a New Window?

WebDriverWait 偏差:在新窗口中未检测到元素

在执行单击事件(即“custom_cols”)后出现新窗口且其中的元素的情况下尽管实现了 WebDriverWait,但仍无法检测到该窗口,即使它们可见,仔细检查代码是

在提供的代码中,所使用的方法presence_of_element_ located会等待元素出现在DOM中,但不保证其可见性或可点击性。为了纠正这个问题,应该使用 element_to_be_clickable 方法。此方法确保元素不仅存在,而且可见、启用和可交互。

try:
    myElem = WebDriverWait(self.browser, delay).until(EC.element_to_be_clickable((By.XPATH , xpath)))

附加说明:

三种常用的 WebDriver 期望元素visibility:

  • presence_of_element_ located: 检查元素是否存在于 DOM 中。
  • visibility_of_element_ located: 确保元素可见,具有高度和宽度大于0.
  • element_to_be_clickable: 验证元素是否可见、启用且可单击。

以上是为什么 WebDriverWait 无法在新窗口中查找元素?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn