Seleniumは、Webドライバーと呼ばれるブラウザ専用のコンポーネントを使用して、Webページを開き、要素をクリック、テキスト入力、ページの内容を取得したりすることができます。WebDriverを介してChrome、Edge、Firefox、Internet Explorerなどの主要ブラウザを操作することができます。
Seleniumを使う準備
Seleniumのインストール
Seleniumbasicのページ中央ら辺にあるDownloadのRelease pageのリンクをクリックします。
SeleniumBasic-x.x.x.x.exe(xはバージョンを表す数値)のリンクをクリックしexeファイルをダウンロードします。
ダウンロードしたファイルを開きインストール作業を行います。
Nextをクリック。
I accept the agreementを選択しNextをクリック。
Full installationが選択されているのを確認しNextをクリック。
Install folderのパスを確認し、Installをクリック。あとでwebdriverを同じフォルダにダウンロードするので覚えておいてください。
おそらく以下のフォルダになっていると思います。
C:\Users\username\AppData\Local\SeleniumBasic
インストールが完了するのを待ちます。
インストール完了後の画面でFirefox向けのアドオンのインストールの有無が出ますがエラーが出てインストールできないので、Install the Selenium IDE Addon for Firefoxのチェックは外して終了します。
インストールに成功していれば、以下のプログラムでエラーが出ません。エラーが出る場合はインストールに失敗しています。
DIM WebDriver = CREATEOLEOBJ("Selenium.WebDriver")
WebDriverのインストール
Seleniumのインストールが完了したら続いてWebDriverをダウンロードします。
Seleniumがインストールされるのは以下のパスで、usernameは自分のユーザー名が入ります。ここに使うブラウザのドライバーをインストールしていきます。ブラウザ毎に準備が必要です。
C:\Users\username\AppData\Local\SeleniumBasic
WebDriverはブラウザのバージョンが変わるごとに対応したものが必要で、手動で入れ直すのはとても面倒です。
WebDriverDownload関数 (自作関数)は引数にブラウザのバージョンやビット数を指定することなく、実行するだけで対応するWebDriverがダウンロードされます。バージョンにあったドライバーをダウンロードしてくれるWebDriverManagerの代わりです。
ブラウザを起動する直前に記述することで必要があればWebDriverがダウンロードされ、前回起動したときのバージョンと同じ場合は何もせずブラウザを起動します。ダウンロードしたドライバーに対応したブラウザのバージョンを同じディレクトリのWebDriverVersion.iniに記録しておき、そのバージョンと比較を行います。
DIM WebDriver = CREATEOLEOBJ("Selenium.WebDriver")
WebDriverDownload.Chrome() // ←Startメソッドの直前に記述
WebDriver.Start("chrome")
INIファイルに以下のようにブラウザのバージョンを記録しています。
[Chrome]
version=106.0.5249.91
[Firefox]
version=v0.31.0
[MsEdge]
version=106.0.1370.34
オブジェクト
<表示切り替え>- WebDriver
- ユーザーがブラウザーを制御するインターフェースを提供します。
- WebElement
- ユーザーがページ上の要素をコントロールするためのインターフェイスを提供します。
- WebElements
参考文献
- SeleniumBasicをインストールしてExcel(VBA)からWebスクレイピングを行うまでのチュートリアル(サンプルプログラム付き) | 技術屋さんの日記帳
- https://sites.google.com/a/chromium.org/chromedriver/