2022年6月16日をもって、Microsoft社のInternetExplorer(IE)のサポートが終了しましたが、従来、IEとVBAを使ってWEBスクレイピングされていた方は、スクレイピングツールの乗り換えに迫られているかと思います。
乗り換え先として有力なのが、SeleniumとGooglechromeです。
本記事では、Seleniumを導入し、VBAでchromeを自動操作するための設定手順を紹介します。
Seleniumを設定する
Selenium Basic のインストール
まず、以下URLより、Selenium Basicをインストールします。
Download/Release pageに遷移します。

遷移先で、SeleniumBasic-XXXXX.exe をダウンロードします。

ダウンロードされた「SeleniumBasic-XXXXX.exe」をダブルクリックし、画面の案内に従って、インストールします。
ChromeDriver を最新化
次に、ChromeDriverを最新版のものに更新します。
以下サイトから入手します。
ChromeDriverのバージョンは、現在使用しているchromeのバージョンとあわせます。
現在使用しているchromeのバージョンは、以下の方法で調べてください。
ChromeDriverとchromeのバージョンは、上3桁までが一致していればOKです。
chromeのバージョンが109.0.5414.75であれば、109までを一致させます。
chrome Driverをダウンロードする際、以下画面の通り複数の選択肢がありますが、windowsを使用している場合は、chromedriver_win64.zipをダウンロードします。
以下、URLに遷移し、ダウンロードします。

ダウンロードしたchromedriver_win32.zipを右クリックし、すべて展開を選択し、展開してください。

「chromedriver_win32」というフォルダができますので、フォルダの中に入っているchromedriver.exeをコピーします。

Selenium Basic をインストールしたフォルダを開きます。
インストールフォルダが分からない場合は、エクスプローラーを開いて、アドレスバーに以下を入力してエンターキーを押せば、該当フォルダが開くはずです。(エクスプローラーやアドレスバーについてはこちらを参照ください)
%LOCALAPPDATA%\SeleniumBasic

開いたフォルダに、先ほどコピーしたchromedriver.exeを貼り付けします。ファイルを置き換えるを選択します。

.NET Frameworkをインストール
必要なバージョンの .NET Framework をインストールします。
インストールしておかないと、マクロ実行時に以下のような、オートメーションエラーが発生します。
「実行時エラー ‘-2146232576(80131700)’ オートメーション エラーです」
インストールの方法は、エクスプローラーを開いて、アドレスバーに以下を入力してエンターキーを押してください。
%LOCALAPPDATA%\SeleniumBasic\Scripts

フォルダ内の、StartChrome.vbsをダブルクリックして実行してください。

ユーザープロファイルの設定
次に、 Selenium用に、ユーザープロファイルを設定します。
スクレイピングの対象が、ログインが必要なサイトの場合、この設定をしないと、マクロを動かす都度、ログインする必要が生じます。
ユーザープロファイルについては、以下サイトが参考なります。

具体的には、現在使用しているchromeのアドレスバーに、chrome://versionを入力、エンターキーをクリック。
そこで表示された、プロフィールパスの1個上の階層が、現在使用しているユーザープロファイルのパスです。当該フォルダを chromedriver用のユーザープロファイルとして使用します。

手順としては、上記の例の場合ですと、「C:\Users~\Chrome」という部分までをコピーして、エクスプローラーを開いて、アドレスバーにコピーします。エンターキーを押します。そこで開かれたフォルダー内に「UserData」というフォルダがありますので、当該フォルダーをコピーします。
コピーした 「UserData」 を適当な場所(どこでもよいです。デスクトップや、ドキュメント等)に貼り付けします。
貼り付けした先のパスを控えます。
ユーザープロファイルの利用
ユーザープロファイルをVBAで使用する際には、前項で控えたパスを用いて、以下のように記述します。
Dim PROFILE_PATH As String: PROFILE_PATH = "\XXX\XXX" '上記でコピーしたフォルダのパスを指定
driver.AddArgument ("user-data-dir=" & PROFILE_PATH)
VBEの参照設定を実施
次に、VBE(VisualBasicEditor)の参照設定を実施します。
VBE(VisualBasicEditor) を開いて、ツール > 参照設定を選択します。

Selenium Type Libraryにチェックを入れます。

以上で、 Selenium の初期設定は完了です。
まとめ
いかがでしたでしょうか? 参考になれば幸いです。
SeleniumとVBAを使って、ブラウザの自動操作を実現した事例としては、以下の記事を参考にしてみてください。
コメント