【问题标题】:AttributeError: 'tuple' object has no attribute 'is_enabled'AttributeError:“元组”对象没有属性“is_enabled”
【发布时间】:2019-09-18 14:49:44
【问题描述】:

硒: 3.141.0,语言: Python 3。

访问以下显式等待方法时出现以下错误。

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


driver = webdriver.Chrome(
    "Path\\ChromeDriver_32.exe")
driver.get('foo')

element = WebDriverWait(driver, 10).until(
    EC.staleness_of((By.XPATH, "//div[@class='loading_icon']")))

print(element)

预期结果:元素从 DOM 退出后返回 True。

实际结果: AttributeError: 'tuple' object has no attribute 'is_enabled'

Traceback (most recent call last):
  File "......../temp.py", line 14, in <module>
    EC.staleness_of((By.XPATH, "//div[@class='loading_icon']")))
  File "...\Python\Python37-32\lib\site-packages\selenium\webdriver\support\wait.py", line 71, in until
    value = method(self._driver)
  File "...\Python\Python37-32\lib\site-packages\selenium\webdriver\support\expected_conditions.py", line 315, in __call__
    self.element.is_enabled()
AttributeError: 'tuple' object has no attribute 'is_enabled'

有人可以帮我做错什么吗?

【问题讨论】:

    标签: python selenium


    【解决方案1】:

    您正在将一个元组传递给一个需要一个元素的方法。来自expected_conditions.staleness_of() documentation

    class selenium.webdriver.support.expected_conditions.staleness_of(element)

    等到元素不再附加到 DOM。 element 是要等待的元素。

    这与其他一些expected_conditions 便捷方法不同,后者采用 locator 参数。这个特殊的方法不能使用定位器,因为定位器只能找到仍然连接到DOM的元素

    在分离之前先找到元素:

    from selenium.common.exceptions import NoSuchElementException
    
    try:
        element = driver.find_element_by_xpath("//div[@class='loading_icon']")
        WebDriverWait(driver, 10).until(EC.staleness_of(element))
    except NoSuchElementException:
        element = None
    

    【讨论】:

      猜你喜欢
      • 2013-06-21
      • 2021-07-30
      • 2013-07-29
      • 2020-08-29
      • 2015-04-22
      • 2019-04-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多