質問: 問題 -- chrome + chromedriver + seleniumで作ったプログラムをheroku上で動かしているのですが、chromeとchromedriverのバージョンが合わせられず、エラーが出てしまいます ``` $ heroku run google-chrome --version Google Chrome 75.0.3770.142 unknown $ heroku run chromedriver -v ChromeDriver 76.0.3809.68 ``` ### エラー ``` Selenium::WebDriver::Error::SessionNotCreatedError: session not created: This version of ChromeDriver only supports Chrome version 76 ``` 試したこと ----- * buildpackを再インストールすると最新版になると思いましたが、なりませんでした ``` https://github.com/heroku/heroku-buildpack-google-chrome ``` またバージョン指定をしてのインストールができるわけではないので、困りました * chromeとchromedriverのバージョンが一致すればいいので、chromedriverのバージョンを下げる方法を調べましたがこちらもわかりませんでした。 ローカル環境であれば以下の方法でchromedriverのバージョンを指定できますが、heroku上ではできませんでした https://qiita.com/H2O_HoriHori/items/ad7f9855cfc20b995c42 以上、お知恵をお貸しいただければ幸いです。 よろしくお願いします。
回答: こんにちは。アプリケーションの言語がわからないので、外していたらすみません。 ChromeDriverのほうが少し早い(次期リリース対応)のものが出てくるので、以下の組み合わせのほうが良いかと思います。 * google-chrome -> buildpackで普通に入れる (latestは安定版が入る) * chromedriver -> これもbuildpackで入れる * ただし、タイミングによって気をつけないとバージョンが合わないので、chromedriver側のバージョンをgoogle-chromeに合わせるようにする 自分でやったことがないので恐縮ですが、以下のbuildpack-chromedriverのREADMEにバージョン指定の案内があるようなので、これでいかがでしょう? (Herokuの環境変数でCHROMEDRIVER_VERSIONという環境変数に、google-chrome側の75.0.3を設定してあげるとか。 関連: https://github.com/heroku/heroku-buildpack-chromedriver/issues/13