SeleniumBasicをインストールしてExcel(VBA)からスクレイピングを行うまでのチュートリアル(サンプルプログラム付き)

スポンサードリンク

Selenium Basicの入手

Selenium Basicは、ChromeやEdge、IEなどをVBAなど外部プログラムから制御するためのライブラリです。
以下のページにアクセスして Downloadと書かれているすぐ下のリンクをクリックします。

https://florentbr.github.io/SeleniumBasic/

image

SeleniumBasic-2.0.9.0.exe をダウンロードして実行。

image

インストーラーの実行

インストーラーを立ち上げた直後のウィンドウ。
Nextをクリック

image

ライセンス条項が表示されるので、◎ I accept the argreement を選択してNextをクリック

image

特に変更する必要はないのでそのままNextをクリック

image

インストールされる先のフォルダ名を覚えておいて Installクリック

image

インストールが終わると、Firefoxのアドオンをインストールするか聞いてくるので
チェックを外して Finish をクリック。

ここでインストールさせようとしているアドオンは最新版のFirefoxでは使えません。

image

Selenium Basicを最新版のChromeに対応させる

SelenumBasicに同梱されているChrome用の制御ドライバは残念ながら最新版のChromeに対応していません。
以下のページから最新版のChromeドライバをダウンロードしてきて、手動で上書きコピーする必要があります。

https://sites.google.com/a/chromium.org/chromedriver/

赤丸で囲ったリンクをクリックしていけばダウンロードできます。

image

image

Windows版が必要なので、chromedriver_win32.zip をダウンロードします。

image

zipを解答すると、 chromedriver.exe が1ファイルあると思います。
このファイルを、Selenium Basicをインストールしたフォルダにコピー&上書きします。

image

どこにインストールされているかわからなくなったら、エクスプローラのアドレスバーに以下のテキストをコピー&ペーストすればフォルダを開くことができます。

%LOCALAPPDATA%\SeleniumBasic

Selenium Basicの動作確認(スクレイピングサンプルVBA)

URL内に検索クエリが含まれておらず、Webページから検索しないと結果が出てこないようなページを取得するサンプルを用意しました。

image

以下のマクロを実行すると、某図書館のHPからChromeでSeleniumの本を検索し、スクレイピングを行い情報をExcelに貼り付けます。(要:Chrome)
この記事を書いた時に作成したサンプルプログラムは一番下からダウンロードできます。

EXCELマクロ(VBA)でスクレイピングする部分の抜粋

    With driver
        .Start
        '豊田市図書館のHPにアクセス
        .Get "https://www.library.toyota.aichi.jp/" 
        
        '検索するキーワードを投入
        .FindElementById("kensaku_keyword").SendKeys Range("SearchKeyWord") & vbCrLf
        
        'スクレイピング開始
        For Each elmDoc In .FindElementByClass("doclist").FindElementsByClass("doc")
            Debug.Print elmDoc.FindElementByClass("doc-title").Text       '本のタイトル
            Debug.Print elmDoc.FindElementByClass("doc-writer").Text      '著者
            Debug.Print elmDoc.FindElementByClass("doc-recap").Text       '本の概略
            Debug.Print elmDoc.FindElementByClass("doc-available").Text   '貸出可否
        Next
    End With

image

サンプルプログラム ダウンロード

SeleniumBasicSample.xlsm

新規PCにSeleniumBasicをインストールした際の注意点

新規にインストールしたWindows PCに一連のSeleniumBasicの設定を行って、サンプルを実行しようとするとかなりの高確率でオートメーションエラーが発生します。

これは.Net Fremework 3.5がインストールされていないためで、以下のエントリを参照することで解決できる場合があります。

SeleniumBasicでオートメーションエラー -214623576(80131700) が出た時の対処法

SeleniumBasicでオートメーションエラー -214623576(80131700) が出た時の対処法
SeleniumBasicをインストールしてExcelから使うまでのチュートリアルに添付してある動作確認用のExcelマクロを実行すると、 ...

スポンサードリンク

スポンサードリンク