【VBA】SeleniumBasicのインストールとか利用準備

本ページはプロモーションが含まれています

まずSeleniumとは

WEBブラウザの操作を自動化するためのフレームワークでWEBアプリケーションの UI テストを自動化する目的で開発されたそうで

主な使い道としてRPA的にブラウザ操作を自動化させたりその流れでスクレイピングしたりとか

Java、Python、Ruby 等の主要なプログラミング言語で使える他、EXCELなどのVBAでも使える守備範囲でブラウザもChrome、Edge、Firefox、IEとこちらも完璧と言える守備範囲
※個人的にはChrome使えれば十分、と言うかChromeしか使わない

オープンソースで無料利用できるところも魅力の一つ

で、そのSeleniumをVBAで使えるようにするためのツールがSeleniumBasic(って認識でいいと思う)

SeleniumBasicのインストール方法

インストーラーのダウンロード

↓↓のGithubからSeleniumBasicのインストーラーをダウンロード
最終更新が2016年3月と古くても問題なし

https://github.com/florentbr/SeleniumBasic/releases/tag/v2.0.9.0

インストーラーの実行

SeleniumBasic特有ってわけではないですが、管理者としてインストーラーを実行するかユーザーとして実行(普通にダブルクリック)するかでインストール先フォルダが変わります

利用する上ではどちらでも大したは影響ないですが”chromedriver.exe”の保存先にもなるのでお気をつけください

右クリックから「管理者として実行」


改めてここからインストール手順

最初の画面は無心で「Next」

ライセンス契約について
気になる人は一読してラジオを「I accept the agreement」移して「Next」

インストールする対象を選択をご自由に※Chromeだけあればいいかなと

最終確認画面
ココにインストール先のフォルダが表示されているのでチェック
サンプルは管理者インストールなので「C:\Program Files\SeleniumBasic
ユーザーだと「C:\Users\<ユーザー名>\AppData\Local\SeleniumBasic

無事完了

ChromeDriverの更新

インストールした直後のChromeDriverだとVBAから怒られます
ChromeDriverの特徴として日頃使ってるChromeのバージョンに合わせたドライバーが必要で、初期のドライバーが古すぎてバージョンが合わないよってこと


まず今使っているChromeのバージョンの調べ方は
「Chrome右上の︙ → ヘルプ → Google Chromeについて」設定画面を開くと見れる

続いて↓↓から今使っているChromeのバージョンに合わせたドライバーをダウンロード
もしCurrent Releasesの中になかったら下部にも古いバージョンがあるのでそこからダウンロード

https://sites.google.com/chromium.org/driver/downloads

使っているPC環境に合わせてドライバーをダウンロード
Windowsは32bitも64bitもwin32でOK

https://googlechromelabs.github.io/chrome-for-testing/#stable

chromedriverでOSに合わせてURLを直接叩いてダウンロードを

ダウンロードしたzipを解凍すると「chromedriver.exe」が取得できるのでSeleniumBasicをインストールしたフォルダにあるドライバーを上書き更新

.NET Framework 3.5をインストール

.NET Framework 3.5がないとインスタンスを作ろうとしたときにオートメーションエラーが発生するので対応する


正攻法でMicrosoftのWEBサイトからダウンロードしてインストールする場合はコチラから

https://www.microsoft.com/ja-jp/download/details.aspx?id=21

他に簡単な方法としてSeleniumBasicフォルダ内のScriptsフォルダにある「StartChrome.vbs」を実行してあげればエラーメッセージとともに.NET Framework 3.5のインストール画面が出てくるのでそのままインストールしてあげるだけ

既に.NET Framework 3.5がインストールされている場合は空のChromeが立ち上がってメッセージが出てくる

ちなみにStartChrome.vbsの中身はこれだけ

Set driver = CreateObject(“Selenium.ChromeDriver”)」で発生するエラーに反応して.NET Framework 3.5のインストールを促してくれるんだろうから「流石MS!」と思いつつ、「だったらVBAでもそうしてくれよ・・・」と不満を吐いてみる

Set driver = CreateObject("Selenium.ChromeDriver")
driver.Start
WScript.Echo "Click OK to quit"
driver.Quit

あとがき

VBAの場合はここまでやって利用準備完了

ちなみにChromeDriverの更新は結構頻度が高くて面倒なのでプログラムでチェックした方が吉

私自作のプログラム公開しているので気になる方はこちらへどうぞ!

コメント

タイトルとURLをコピーしました