&引用;ElementNotInteractiableException“;在尝试单击以前隐藏的div中的元素时,seleniumpython

&引用;ElementNotInteractiableException“;在尝试单击以前隐藏的div中的元素时,seleniumpython,python,selenium,Python,Selenium,我正在用selenium驱动程序和python编写一个测试用例 单击按钮后,当前可见的一个div(单击的按钮的上下文)将隐藏,而先前隐藏的另一个div将可见,其中包含一些需要单击以继续流程的按钮 selenium检测到secound div及其内部元素可见,但当我尝试单击按钮时,出现异常 在第二个div中还有一个包含一些复选框的表,我甚至可以打印checkbox元素,但不能单击它 # Espera hasta que se encuentre visible el panel para sele

我正在用selenium驱动程序和python编写一个测试用例

单击按钮后,当前可见的一个div(单击的按钮的上下文)将隐藏,而先前隐藏的另一个div将可见,其中包含一些需要单击以继续流程的按钮

selenium检测到secound div及其内部元素可见,但当我尝试单击按钮时,出现异常

在第二个div中还有一个包含一些复选框的表,我甚至可以打印checkbox元素,但不能单击它

# Espera hasta que se encuentre visible el panel para selecciona sucursales visibles
        try:
            sucursalsTable = WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.ID , 'sucursals-table')))
        except TimeoutException:
            print "Error al intentar seleccionar sucursales visibles"


        tbody = sucursalsTable.find_element_by_tag_name("tbody")
        rows = tbody.find_elements_by_tag_name("tr")  


        for row in rows:
            cells = row.find_elements_by_tag_name("td")
            checbox = cells[0].find_element_by_xpath("(//input[@type='checkbox'])") # la primera columna
            print checbox
            checbox.click()
            pass
赛后

HTML

id=“Sucursals panel”是第二个div

当我尝试单击第二个div中的按钮时,也会出现相同的异常


如果有人能帮我解决这个问题,我将不胜感激。我也遇到了类似的问题。 此按钮一直隐藏,直到窗体出现问题。 所以我伪造了一个问题,我可以在页面代码中找到按钮。 但当我尝试单击它时,使用以下代码:

driver.find_element_by_class_name('btn_ok_alert').click()
我得到元素不可交互异常。。。 在浏览页面代码很长一段时间后,我发现有两个按钮同名,第一个按钮仍然隐藏着

我找到的解决方案是使用multiple elements search方法,该方法为您提供了一个处理它的索引:

elem = driver.find_elements_by_class_name('btn_ok_alert')
elem[1].click()
这是因为对驱动程序的搜索从页面顶部开始,首先会找到仍然隐藏的按钮(出于其他目的)。 如果我想点击第一个,它会像:

elem[0].click()

该脚本的可能副本在chrome和IE浏览器上运行良好,但在Mozilla firefox中运行不好。使用firefox 46.01、selenium 2.53.1和geckodriver 0.14也存在类似的问题