vba_browser_driver_updater
- Digital0 JPY

[概要] SelenumBasicのWebDriverの自動更新を主な目的として開発したツールです。 *Edgeは以下のURLにて公開されているドライバをダウンロードします。 https://msedgedriver.microsoft.com/バージョン番号/edgedriver_win64.zip *Chromeは以下のURLにて公開されているドライバをダウンロードします。 https://storage.googleapis.com/chrome-for-testing-public/バージョン番号/win64/chromedriver-win64.zip 規定値では以下のフォルダに保存されます。 C:\Users\ユーザID\AppData\Local\SeleniumBasic *Edgeは edgedriver.exe *Chromeは chromedriver.exe という名前になります。 環境変数のLOCALAPPDATAのディレクトリを取得する仕組みでC:\Users\ユーザID\AppData\Localというパスを取得し、その中にSeleniumBasicというフォルダがあれば、既存のフォルダに保存しようとします。フォルダがなければディレクトリを作成して、保存しようとします。 このプログラムを保存しているディレクトリと同じディレクトリ(もしくは作業ディレクトリ)の中に *Edge用は edgedriver_temp *Chrome用は chromedriver_temp ディレクトリにダウンロードしたzipファイルのコピーを保存します。 ダウンロード済みであることを記録するために、このプログラムを保存しているディレクトリと同じディレクトリ(もしくは作業ディレクトリ)の中に *Edge用は edge_バージョン番号 *Chrome用は chrome_バージョン番号 という1KBと評価される空のファイルを作成します。再度同じファイルをダウンロードしたい場合は、この記録用ファイルを消すことで再ダウンロードされます。ダウンロード済みとして記録されたファイルがある場合は再ダウンロードはしません。 [オプション引数] プログラムやショートカットリンクを右クリックして表示されるプログラム名の後ろに起動引数を記述することでオプション引数を利用することができます。 *--browser 更新したいドライバのブラウザについて指定します。edgeと指定するとedge用のドライバーが更新され、chromeと指定するとchrome用のドライバーが更新されます。省略されるとedgeと指定しているのと同じ動作になるので、edgeの場合は指定する必要はありませんが、明記することは自由です。 使用例 vba_browser_driver_updater.exe --browser=chrome *--driver-path ドライバーの保存パスを絶対パスで指定できます。省略すると%LOCALAPPDATA%\SeleniumBasic(具体的には以下のようなパス、C:\Users\ユーザID\AppData\Local\SeleniumBasic)に保存されます。SelenumBasic用のドライバとして使う以外の用途では、利用者が自由にパスを指定できた方が便利だから存在するオプションです。パスをダブルクォーテーションで囲えば、パスの中に空白が使われても問題が発生することなく指定できます。 使用例 vba_browser_driver_updater.exe --browser=chrome --driver-path="C:\WebDriver" *--output-filename ドライバーの保存ファイル名を指定できます。省略するとEdge用にはedgedriver.exe、Chrome用にはchromedriver.exeという名前が使われます。省略時のファイル名はSelenium Basicが要求しているファイル名に合わせています。Edge用の配布時のドライバ名はmsedgedriver.exeなので、この名前を利用したい場合はオプションで指定する必要があります。ファイル名をダブルクォーテーションで囲えば、ファイル名の中に空白が使われても問題が発生することなく指定できます。 使用例 vba_browser_driver_updater.exe --browser=chrome --driver-path="C:\WebDriver" --output-filename=msedgedriver.exe *--no-wait このプログラムが起動されるとコマンドプロンプトが起動しますが、このオプションを指定すると何もキー入力をしなくてもウィンドウが閉じるようになります。ただし起動後の動作内容についての出力を見られないので、どのような動作だったか更新がなかったと判断されたのか?更新動作があったのかを具体的に知ることは出来なくなります。更新時の手数は減りますのでそことのトレードオフが発生します。ここまでのオプションのようにオプション名の後ろに=をつけたり値を指定したりする必要のないオプションになっています。 使用例 vba_browser_driver_updater.exe --browser=chrome --driver-path="C:\WebDriver" --output-filename=msedgedriver.exe --no-wait
[動作環境]
Windows 11 x64
[更新履歴]
2025-11-27 Version1.0.0.0 新規リリース
