2016-10-20 19 views
0

同じIDを持つPython Seleniumのボタンをクリックすると問題に直面します 「Upload」と「Generate Base Form」という2つのボタンがありますが、2つのボタンidは同じです。 "Generate Base Form"という名前のボタンを選択します。ボタンのIDも同じです。 は、私はそれがID、名前またはのCssClassによって要素を見つけることをお勧めですが、いくつかのケースでは、あなたがより具体的な特性に依存してしまいますインスペクター Image of Id for buttonPython Seleniumの同じボタンID

+0

両方のボタンの 'HTML'でチケットを更新しますが、イメージは更新しません。問題の説明だけがあるので、質問も追加してください – Andersson

答えて

0

の画像を添付します、その要素を排他的に見つけることができます。最も一般的な解決策は、XPathを使用することです。

あなたのケースでは、

driver.find_element_by_xpath("//button[@id='uploadButton' and @value='Upload']").click() 

のようなものが動作するはずです。他のボタンも同じの値属性を持っている場合は、見つけようとしている要素の固有のものを見つけて、それをXPathで使用する必要があります。

また、あなたも

driver.find_element_by_xpath("(//button[@id='uploadButton'])[buttonNumber]").click() 

を行うことができbuttonNumberはそれに応じて、あなたがその同じIDを持つ必要があり、ボタンの数に、1からnまで行くのインデックスです。

Thisの記事は、要素の特定に役立ちます。

0

使用したXPath

//input[@id='eRetVO.fileExtend']/../input[2] 
関連する問題