【问题标题】:XPATH doesnt press a clickable button PythonXPATH 没有按下可点击的按钮 Python
【发布时间】:2015-07-28 23:45:21
【问题描述】:

我的问题是第一个是点击,第二个没有,我不明白为什么

WebDriverWait(rootdiv, 10).until(EC.element_to_be_clickable((By.XPATH, "//li[@onclick[contains(.,JTC)]]")))


rootdiv.find_element_by_xpath("//li[@onclick[contains(.,'JTC')]]").click()

WebDriverWait(depdiv, 10).until(EC.element_to_be_clickable((By.XPATH, "//li[@onclick[contains(.,AJU)]]")))

depdiv.find_element_by_xpath("//li[@onclick[contains(.,'AJU')]]").click()

depdiv 和 root div 是要查找的子项,以查找某些 li 导致根从第一个更改为第二个.. 我检查了 div 是否可见,在第一个中,它的点击,第二次找不到对象,我得到一个时间错误

我试图从中获取的部分代码..

<div class = "divCombo4">
   <ul><li>....</li><ul>
   <ul><li>...</li><ul>
</div>

而我的 depdiv 植根于 find_element_by_id("divCombo4")

其中一个 ul li 包含

onclick="selecionou('AJU', this,'.txtBusca4', 'false', 'destino', 'Estouem2', 'AJU');"

【问题讨论】:

    标签: python html selenium selenium-webdriver


    【解决方案1】:

    首先,您需要一个点来使表达式上下文特定。此外,wait.until() 返回一个WebElement 实例,您可以使用它而不是再次发出“查找元素”命令:

    WebDriverWait(rootdiv, 10).until(EC.element_to_be_clickable((By.XPATH, ".//li[@onclick[contains(.,JTC)]]"))).click()
    
    WebDriverWait(depdiv, 10).until(EC.element_to_be_clickable((By.XPATH, ".//li[@onclick[contains(.,AJU)]]"))).click()
    

    【讨论】:

      猜你喜欢
      • 2021-12-04
      • 2023-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-07
      • 2022-10-15
      相关资源
      最近更新 更多