Selenium Python检查WebElement是否可单击

Selenium Python检查WebElement是否可单击,python,selenium,xpath,Python,Selenium,Xpath,我想获取页面中的所有复选框,并对它们进行迭代,以检查它们是否可单击(启用)。为此,我使用了driver.find\u elements\u by\u xpath(element\u xpath),该方法返回所有复选框的列表,我可以为每个复选框调用一个click函数。问题是在我选中2个复选框后,其余复选框变为禁用状态,我无法调用click函数。我找不到任何方法来检查复选框是否仍然可以单击;由于每个复选框都有一个WebElement,而不是它们的字符串,因此我无法使用element\u使其可单击或p

我想获取页面中的所有复选框,并对它们进行迭代,以检查它们是否可单击(启用)。为此,我使用了
driver.find\u elements\u by\u xpath(element\u xpath)
,该方法返回所有复选框的列表,我可以为每个复选框调用一个click函数。问题是在我选中2个复选框后,其余复选框变为禁用状态,我无法调用click函数。我找不到任何方法来检查复选框是否仍然可以单击;由于每个复选框都有一个WebElement,而不是它们的字符串,因此我无法使用
element\u使其可单击
presence\u of\u element\u位于
。自

element = WebDriverWait(driver, 10).until(
                    EC.element_to_be_clickable((By.XPATH, element_xpath))
                )
正在以字符串形式查找元素,eitehr是Id、CSS、XPath或

我用
element.get_attribute('outerHTML')
读到了这一点,我可以得到元素周围的HTML标记,但是我如何使用它来查看元素是否可单击

all_check_box = ".//*[@type='checkbox']"
clickable_elements = driver.find_elements_by_xpath(all_check_box)
for elem in clickable_elements:
    try:
        WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, elem))) #it's not working!!!
    except Exception as e:
         logging.error("couldn't Click")
还有一些原因,当我使用is_enabled()时,它总是正确的

all_check_box = ".//*[@type='checkbox']"
clickable_elements = driver.find_elements_by_xpath(all_check_box)
for elem in clickable_elements:
    print elem.is_enabled() # It's always True
    elem.click()

我只想检查复选框是否禁用了属性?如果存在“禁用”属性,则浏览器的任务是禁用复选框。或者你可以调用click,看看错误是否出现?复选框是否有id?@dejavu\u cmd\u delt不幸的是,noI只会检查复选框是否禁用了属性?如果存在“禁用”属性,则浏览器的任务是禁用复选框。或者你可以调用click,看看错误是否出现?复选框是否有id?@dejavu\u cmd\u delt不幸的是,没有