Selenium - 无法单击按钮

时间:2017-03-06 13:07:37

标签: python python-3.x selenium

我无法点击硒中的特定按钮。没有抛出错误,它发现元素很好,但我无法点击它。

HTML

<li id="btnTipsApp" class="navbutton appmenubutton">
  <a class="ls-icon-tips" onclick="setMainColumnMode(2);selectTab(4);selectNavButton('btnTipsApp');" href="#" title="Search Tips">&nbsp;
  </a>
</li>

Python代码的相关部分

def userSearch():
    WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.ID, 'btnTipsApp')))
    searchTipsButton = driver.find_element_by_class_name('ls-icon-tips')
    print (" tips button attribute: {0}".format(searchTipsButton.get_attribute('title')))
    searchTipsButton.click()

我使用的是Selenium 3.0.2和Firefox 51.0.1。

1 个答案:

答案 0 :(得分:0)

解决了我自己的问题。

解决方法是等待加载时间比我试图点击的按钮要长的元素。我点击它时按钮已经加载了,但它所依赖的其他东西却没有。

WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, 'bigItem')))