目次
経緯
pythonでスクレイピングのプログラムの依頼を受けてました。
サイトを見ると、2つラジオボタンがあって、調べると「NAME要素」で取得できそうでした。
しかし、1つ目のラジオボタンと2つ目のラジオボタンのNAME要素が同じでした。
なので、今回はラジオボタンが複数あったときの対処方法を勉強しました。
.find_elements(By.NAME,””)[0]を使う
まず、うまくいかなかったプログラムを書きます。ラジオボタンの”pay_method”というNAME要素取得しようとしています。
.find_element(By.NAME,"pay_method")
これでやろうとするとエラーは出ませんが、”pay_method”というNAME要素が2つあり、どっちか選べませんでした。
次に、うまくいったプログラムを書きます。
.find_elements(By.NAME,"pay_method")[0]
とすると、初めにあるラジオボタンを取得することできました。このあとの処理で「.click()を使うと、ラジオボタンが押せましたよ。
[]内数字を「1」に変えると、次のラジオボタンが取得できます。
注意点は「elements」のところで最後に「s」を忘れずにつけてください。
参考になれば、幸いです。
ここまで読んでいただきありがとうございました。