この作業は5分で終えることができます。
ExcelVBAでChromeを使ってスクレイピング(クローリング)するにはSeleniumBasicを使う必要があります。
SeleniumBasicの導入方法はいろんなサイトで説明がありますが、実はつまずく箇所があり、このサイトではそのつまずく点についても細かく解説します。
この手順通り進めれば、SeleniumBasicを使って、ExcelVBAからChromeを自動操作することができます。
先に注意点をお伝えしておくと
1.GoogleChromeのインストールフォルダが間違っている
2.ChromeDriverのバージョンが間違っている
3..NET Framework3.5をインストールしていない
この3点が初心者がつまずきやすい点です。ここができないとSeleniumBasicでChromeが起動できません。
この点について詳しく解説しているサイトは見かけませんので、
本サイトで気をつけながら、SeleniumBasicの導入を進めていきましょう。
GoogleChromeをダウンロードし、インストールする
こちらのサイトにアクセスし、Chromeをダウンロード、インストールします。
既にChromeをインストールしている方は、飛ばしてください。
GoogleChromeのインストール先を確認する(つまずきポイント)
GoogleChromeのインストール先が、
C:\Program Files (x86)\Google
になっている場合は問題ありません。
確認方法としては、
C:\Program Files (x86)\Google
内にChromeフォルダがある場合は、C:\Program Files (x86) 内にGoogleChromeがインストールされています。
この状態であれば、問題ありません。
無い場合は、C:\Program Files\Google にChromeフォルダがあり、そこにGoogleChromeがインストールされています。
この場合、そのままだとSeleniumBasicを使ってGoogleChromeを起動しようとしてもエラーになりますので、調整が必要になります。
とは言っても簡単で、C:\Program Files\GoogleのChromeフォルダをコピーして、C:\Program Files (x86)\Googleのフォルダに貼り付けるだけです。
これだけで完了です。
なぜこのような確認が必要かというと、
2020年6月以降にGoogleChrome(バージョン85以降)をインストールされている方は、
インストールのフォルダ先が
C:\Program Files
に変更なっています。
従来は
C:\Program Files (x86)
にインストールされており、バージョン85より前からChromeを使っていれば、インストール先はC:\Program Files (x86)のままになっています。
SeleiumBasicは近年アップデートされていないこともあり、GoogleChromeが C:\Program Files (x86) \Google 内にインストールされていないと動作しません。
C:\Program Files\GoogleフォルダにChromeが入っている場合は、SeleniumBasicが認識しないため、C:\Program Files (x86) \GoogleにChromeデータを入れることでSeleniumBasicがChromeを認識できるようになります。
※Chromeフォルダはコピーしてください。切り取りではない点、ご注意ください。
SeleniumBasicをインストールする
SeleniumBasicをインストールします。
https://github.com/florentbr/SeleniumBasic/releases/tag/v2.0.9.0 こちらのサイトでSeleniumBasic-2.0.9.0.exeをクリックしダウンロード、インストールします。
「I accept the agreement」を選択し、「Next」をクリックします。
「Next」をクリックします。
下の画像のフォルダの場所を覚えておきましょう。
「C:\Users\(各自のPC設定により異なります)\AppdData\Local\SeleniumBasic」
これを覚えておいてください。次のChromeDriverの更新で使います。
「Install」をクリックします。
「Finish」をクリックしてインストール完了です。
ChromeDriverを設定する(つまずきポイント)
SeleniumBasicにChromeDriverを設定します。
まず、SeleniumBasicのChromeDriverが入っているフォルダを開きます。
フォルダは隠しフォルダになっているので、隠しフォルダが非表示設定になっている場合は、フォルダは表示されませんので、隠しフォルダを表示できる設定にする必要があります。
隠しフォルダの表示方法
スタートメニュー > W > Windowsシステムツール > コントロールパネル をクリックします。
表示方法で「小さいアイコン」を選択して、「エクスプローラーのオプション」をクリックします。
「表示」タブをクリックし、「隠しファイル、隠しフォルダー、および隠しドライブを表示する」にチェックをいれ、OKをクリックします。
スタートメニュー > W > Windowsシステムツール >PC をクリックします。
続いて、C: > ユーザー > (各自のPC設定により異なります) > AppData > Local > SeleniumBasic
と、フォルダを移動します(フォルダ先は、SeleniumBasicインストール時に覚えておいたフォルダ先です)。
ここにchromedriver.exeというファイルがありますが、このファイルが古いため、このままではSeleniumBasicでChromeが動作しません。
そのために適したChromeDriverをダウンロードしてきます。
ChromeDriverのダウンロード先はこちらです。
https://chromedriver.chromium.org/home
ChromeDriverは新しすぎても、古すぎてもSeleniumBasicは動作しません。
筆者はVer2.43を利用しています。
Ver2.43のダウンロード先はこちらです。
https://chromedriver.storage.googleapis.com/index.html?path=2.43/
chromedriver win32.zipをクリックしてダウンロードします。
解凍したchromedriver.exeを
C: > ユーザー > (各自のPC設定により異なります) > AppData > Local > SeleniumBasic
フォルダにある既存のchromedriver.exeに上書きして、ChromeDriverを更新します。
これでChromeDriverの更新は完了です。
.NET Framework 3.5のインストール(つまずきポイント)
これで最後です。
スタートメニュー > S > Selenium Basic >StartChrome をクリックします。
クリックするとエラーになりますが、同時に.NET Framework3.5のインストール画面が出てきます。
「この機能をダウンロードしてインストールする」をクリックします。
インストールが完了したら、もう一度、
スタートメニュー > S > Selenium Basic >StartChrome をクリックします。
以下の画面が出れば、SeleniumBasicの動作テストは成功です。
OKボタンでChromeが閉じます。
これでExcelVBAを使って、Chromeを操作する準備ができました。
次回は、ExcelVBAを使ってChromeでYahoo!Japanを開くついて解説します。