2015-12-30 111 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