top of page
検索

Selenium Basic 使ってみた-(セレクトボックス・プルダウンメニュー)

更新日:2021年9月28日

こんにちは。

友人から頼まれて使ったこともないSeleniumというものを調査し、ExcelのVBAから使ってみました。以下、その備忘録です。


早速、実践練習としていろいろなサイトを見てみたのですが、前回までに紹介した「キーボード入力」、「クリック」、「値の取得」では太刀打ちできない状況に。




今回は、その代表例、セレクトボックス(プルダウンメニューと呼ぶのかな?)について備忘録します。



■ 動作環境

 

OS: Windows 8.1(64ビット)

Excel: 2013(32ビット)

Chrome: 86.0.4240.198

Selenium Basic: v2.0.9.0


■ セレクトボックス(プルダウンメニュー)とは

 

複数の項目から何かを選択する際に使用されるコントロールです。



HTMLはこんな感じ。



■ 任意の項目を選択する

 

セレクトボックス(プルダウンメニュー)の任意の項目を選択するには、SelectElementクラスのSelectBy系メソッドを使います。

  • SelectByText

  • SelectByValue

  • SelectByIndex


※SelectElementオブジェクトは、WebElementクラスのAsSelectメソッドで取得できます。



① セレクトボックス(プルダウンメニュー)に表示されている項目名(文字列)で選択する場合は、SelectByTextメソッドを使います。



② valueの値が分っている場合は、SelectByValueメソッドも使えます。

※「4~7日で発送」のvalue値=3を指定



(後、項目順で検索できるSelectByIndexメソッドもあります!)



■ セレクトボックス(プルダウンメニュー)値を取得

 

よく分らずメソッド、プロパティを色々触ってみました。


① textプロパティでは、セレクトボックスに設定された文字列(全ての項目文字列をvbLfで連結した形)が取得できます。



② valueプロパティでは、選択されている項目のvalue値が取得できます。

※「4~7日で発送」が選択されている状態で取得



③SelectElementクラスから情報を得られそうです。

  • AllSelectedOptions

  • IsMultiple(複数選択可能かどうか)

  • Options

  • SelectedOption


※IsMultiple以外は「オブジェクトは、このプロパティまたはメソッドをサポートしていません。」とのことで使用できず…涙



■ まとめ

 

これで択一型のセレクトボックス(プルダウンメニュー)は自由自在に操れると思います。

(複数選択型は、もう少し調査しないと…ですね。💦)


なお、本備忘録も活用した【メルカリ管理ツール】を以下サイトで販売しております。

ご興味ございましたらご覧ください。


次回以降も、引き続き基本の4テクニックで乗り切れなかったケースを備忘録しようと思います。


閲覧数:12,284回0件のコメント

Comments


bottom of page