2017-05-24 38 views
-2

我想單擊網站上的按鈕,但問題是有許多完全相同的按鈕,無論我嘗試使用find_element_by_到目前爲止,沒有任何工作,瀏覽器剛剛關閉。Python 3 Selenium Button find_element_by_

問題是我不能使用id,因爲每次頁面刷新時,id都是隨機生成的。

我將如何去只點擊像這樣的許多按鈕的第一個按鈕。 我將如何去點擊只有這樣的許多按鈕的第二個按鈕。

我看到了for循環的東西,但無法弄清楚。

按鈕代碼:

<button type="submit" value="Začni rop" id="button5925d8ad338af" class="green "> 
     <div class="button-content">Začni rop</div> 
</button> 

任何幫助非常讚賞。

+0

歡迎來到Stack Overflow!請參閱:[我如何做X?](https://meta.stackoverflow.com/questions/253069/whats-the-appropriate-new-current-close-reason-for-how-do-i-dox )對SO的期望是,用戶提出的問題不僅僅是研究來回答他們自己的問題,而且還分享研究,代碼嘗試和結果。這表明你已經花時間去嘗試幫助自己,它使我們避免重申明顯的答案,最重要的是它可以幫助你得到更具體和相關的答案!參見:[提問] – JeffC

回答

0

首先,總有「通過短信」找到所需的按鈕方式:

driver.find_element_by_xpath("//button[div = 'Začni rop']") 
driver.find_element_by_xpath("//button[@value = 'Začni rop']") 

而且,如果你還是想依靠按鈕的順序上,你可以找到他們所有並通過索引得到期望的一個:

buttons = driver.find_elements_by_tag_name("button") 
buttons[0].click() 
+0

使用這個和它的作品 按鈕= driver.find_elements_by_xpath( 「//按鈕[@value = 'ZačniROP']」) 鍵[0]。點擊() 感謝您的幫助 –