SeleniumからChromeを扱う際、一般的にChromeDriverを使います。
(Selenium 4.0では不要になりそう?)
また、ChromeDriverはChromeのバージョンに敏感で、特に開発環境でChromeが自動更新されていると動作しなくなって
This version of ChromeDriver only supports Chrome version**
などというメッセージがでます。現在のバージョンを確認して新しいバージョンをダウンロードして、展開して、配置し直すというのは地味に面倒です。
chrome-driver-instlallerはその問題を解消するため、インストールされているChromeのバージョンを検出し、対応するChromeDriverがなければ自動的にインストールしてくれます。
使い方は簡単で、以下の一行をコード内に置くだけです。
Optionalpath = com.samuraism.chromedriverinstaller.ChromeDriverInstaller.ensureInstalled("/tmp/chromedriver");
システムプロパティ webdriver.chrome.driver もセットしてくれます。
Chromeを検出できなかったり、検出したバージョンをサポートするChromeDriverが見つからなかったりしたらOptional.empty()が返ります(普通はないと思う).
現在のところmacOSとLinuxに対応しています。Chromeが/Applications/や /usr/bin/ にあることを前提としています。前提と外れる場合やWindowsでも使いたい場合、プルリクエストを頂ければ幸いです。
・GitHub Samuraism / chrome-driver-installer