Yi3112Yi3112
@Yi3112Yi3112

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

[selenium] 階層の異なる要素を取得

あるサイトをスクレイピングして
条件付きでボタンクリックをしようと思っています。
対象のhtmlは以下のとおりです。
Qiita.png

・上図を1エリアとし、それが20個連続して下に連なっています。
・Keyword1form&Keyword2formにはそれぞれ異なるワードが入っています。
・forですべてのKeyword1form&Keyword2formを確認し、指定ワードが入っているエリアに属するDWbuttonだけを押したい。
(=合致しないボタンはスルー)

find_elementsで取得してひとつずつワードチェックすれば出来るかと思ったのですが
どのエリアも「DWbutton」のため、対応するbuttonを指定できずに困っています。

教えていただけると幸いです。
何卒宜しくお願い致します。

0

3Answer

htmlのロケーションパスを利用すれば出来ました!
皆様のコメント、大変勉強になりました。ありがとうございました。

2Like

できるかどうか試せてないので何とも言えませんが。
例えば「find_elementsで取得してひとつずつワードチェック」して行って、
指定ワードを満たさなかったエリアを削除してくことで、
目的のエリアだけを残し、そのDWbuttonを押すというやり方はどうでしょうか?
「エリアを消す」という操作ができるかどうかは調査不足でわからないです。。。申し訳ございません。。。

助けになればと思います。

0Like

Your answer might help someone💌