如何单击以下网站上的按钮?

时间:2019-06-15 18:13:26

标签: python selenium xpath css-selectors webdriverwait

我是python世界的新手,我试图在以下网站上选择几个选项,然后单击“搜索”按钮以更新结果。但是,我无法按一下按钮。

我尝试使用搜索button.click()和.submit(),并且试图隐式等待。我还使用了下面的代码来等待按钮可单击。执行代码时,它高亮显示按钮,但似乎没有释放点击。几乎像半按。

do-while

我希望搜索结果会根据上述条件进行更新。

2 个答案:

答案 0 :(得分:1)

您似乎很近。要在元素上let ip = request.headers['x-forwarded-for'].split(',')[1]; ,您必须诱使 WebDriverWait 使元素可点击,并且可以使用以下任一解决方案:

  • 使用click()

    CSS_SELECTOR
  • 使用WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button#search-button>i.fa.fa-search#search-button-icon"))).click()

    XPATH
  • 注意:您必须添加以下导入:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[@id='search-button']/i[@class='fa fa-search' and @id='search-button-icon']"))).click()
    
  • 浏览器快照:

car

答案 1 :(得分:0)

使用xpath定位特定的

时,需要2个带有搜索按钮的元素
searchbutton = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[@id='search-button']")))
searchbutton.click()