2015-12-30 72 views
6

嗨,我尝试使用XPath和CSS选择器上选择按钮点击,但它不工作如何在文本按钮点击使用硒蟒蛇

browser.find_elements_by_xpath('//div[@class="section-select-all"]').click() 
browser.find_elements_by_css_selector('#results-container > form > ul > li:nth-child(1) > div > div > button').click() 
browser.find_elements_by_xpath('//*[@id="results-container"]/form/ul/li[1]/div/div/button').click() 

请让我知道怎么会在这里是代码

<div class="section-actions"><button type="button" class="section-select-all">Select 50<span class="screen-reader-text"> for section Dec 11, 2015</span></button></div> 
+0

要点击多少个按钮? – JRodDynamite

+0

如果您在使用Xpath或CSS查询时遇到问题,您可以使用Chrome和Firefox中的开发人员工具来检查您所需的Web元素是否被选中。只需使用控制台并键入$$(“CSS查询”)或$ .x(“XPath查询”) – narko

回答

1

您使用的是elements,这是行不通的。改为使用element。我相信它会起作用。

+0

非常感谢 – Bostan

0

保持它simple.If有那么一个单一的按钮尝试:

实施例1 -

browser.find_element_by_class_name("section-select-all").click() 

如果用相同的类名称的多个按钮,那么你可以使用这个:

例2 -

buttons = browser.find_elements_by_class_name("section-select-all") 
for button in buttons: 
    button.click() 

如果按钮是在一个框架,然后确保你切换到点击它之前的框架。

+0

AttributeError:'list'对象没有属性'点击' – Bostan

+0

@Bostan - 我希望'browser = webdriver.Firefox )'或铬。 – JRodDynamite

+0

yes webdriver.Firefox() – Bostan