2016-05-01 1 views
0

セレンはどのようにして次のHTMLコードの次のボタンをクリックできますか? セレニウムは次のボタンをクリックします

<span class="action-btn" data-bind="visible: viewModel.page() < viewModel.pages(), click: viewModel.changePage(+1);">&gt;</span> 

は当初、私は書いた:

elm = driver.find_element_by_class_name('action-btn') 
elm.click() 
time.sleep(4) 

しかし、私は、ウェブサイトでは、同様に似た名前を持つ他のbuttonsがあることに気づきました。私の現在のコードでは、基本的にaction-btn customizeをクリックするだけで、このボタン名は私がクリックしようとしたコードの前に来るからです。

代わりにコードを書く必要がありますか?ここで

更新

は、フレームのスクリーンショットです。黄色の強調表示が私がクリックしようとしているものです。あなたのスクリーンショットを見ると

image of HTML code

+0

このボタンを親のように区別する機能はありますか? – AKS

+0

このHTMLスニペットで確実に言えることはありません。あなたが自分で作ったものであれば、興味のあるボタンにIDを追加するだけです。 – e4c5

+0

クリックしたいボタンがあるフレームのスクリーンショットを追加しました。これが参考になることを願っています! –

答えて

0

あなたがクリックしaction-btnpagerクラスで最後のものであるようです。

そして、あなたはクラスpagerで一つだけdivの要素を持っている場合、あなたはその中のすべてのaction-btnを選択して、最後の1を得ることができます:ここで

elem = driver.find_element_by_css_selector("div.pager span.action-btn:last-of-type"); 

:last-of-typeセレクタの詳細については、以下のとおりです。

:last-of-type CSS疑似クラスは、親要素の子のリスト内の指定された要素名を持つ最後の兄弟を表します。

+1

ありがとうございます。これはうまくいくようです。 :) –

+0

downvoteのいくつかのコメントをいただければ幸いです。 – AKS

+0

私はそれをdownvoteしなかった..私はそれのためにupvoted。 –

関連する問題