如何通过Selenium和Python在html上单击带有文本作为Search的按钮?

时间:2018-08-22 18:42:51

标签: python selenium selenium-webdriver xpath webdriver

我正在尝试使用Selenium单击“搜索”按钮,但似乎无法找到它。

<div class="search">
            <input type="submit" title="Search" value="Search" class="spinner">
</div>              

我的代码如下:

search_button = driver.find_element_by_class_name("spinner")
search_button.send_keys(Keys.RETURN)

任何帮助将不胜感激。谢谢

2 个答案:

答案 0 :(得分:2)

根据您共享的 HTML ,您可以在按钮上调用click(),文字为 Search ,您可以使用以下任一解决方案:

  • 使用click()

    driver.find_element_by_xpath("//input[@class='spinner' and @title='Search']").click()
    
  • 使用submit()

    driver.find_element_by_xpath("//input[@class='spinner' and @title='Search']").submit()
    

答案 1 :(得分:0)

您可以尝试这样

driver.find_element_by_css_selector(".spinner")
driver.find_element_by_xpath("//div[@class='search']/input")
driver.find_element_by_xpath("//input[@type='submit' and @title='Search']")
driver.find_element_by_xpath("//input[@type='submit' and @value='Search']")
driver.find_element_by_xpath("//input[@title='Search']")
driver.find_element_by_xpath("//input[@value='Search']")

elementByXpath = driver.find_element_by_xpath("//div[@class='search']")
elementByXpath.find_element_by_tag_name("input").send_keys(Keys.RETURN)