2021年10月29日
VS2017で開発したC#+Selenium+Chromの連動システムを実行したところ、エラーが出ました。
そこで
いつも通りの手順で
プロジェクトの上で右クリック > NuGetパッケージの管理(N)
と進めてChromeDriverの更新をしたところエラーが出まくりました><、、、
エラー解消の為に結構はまってしまったのですが、何とか色々といじってエラーが解消されました。
備忘録としてメモっておきます。
ターゲットフレームワークの変更
ずっとVersion 4のままプロジェクトをいじっていたので今回は、.Net Framework 4.6.1 にアップグレードしました。
これが根本的なエラーの解決になったのかは不明です。
NuGet パッケージの管理よりChrome Driverを更新
Chromeのバージョンアップに伴い Chrome Driverの更新も行う必要があります。
エラーが出る場合、1)の手順を行っているか確認してみてください。もともとFramework4で行おうとした時に依存関係がどうたらといったエラーが出まくっていました。
本日時点のChromeの最新バージョンはこちらです。
バージョン: 95.0.4638.69(Official Build) (64 ビット)
NuGetより更新していきます。
赤囲みの
Selenium.WebDriver.ChromeDriver 作成者: jsakamoto
を最新版にしたところ正常にC#+Selenium+Chromeが動作する様になりました。
jsakamotoという人は日本人なのかな!?
ありがとうございました!
※注意
Selenium.Chrome.WebDriver 作成者: jbaranda v85.0.0
これは、Chromeのバージョン85までは対応していましたが最近はどうやら更新をしていない様です。
てっきりchromの最新バージョンが95になったので、これもバージョン95になっているかと思いましたが、更新されていませんでした。もう開発をやめてるっぽいです。
なので今後Chromeのバージョンアップが行われた場合には
Selenium.WebDriver.ChromeDriver 作成者: jsakamoto
をChromeのバージョンに合わせて更新する様にしましょう。
ソリューションのリビルド
ここまでの手順を行ったらソリューションをリビルドします。
ただし、この時にF5を押して普通にビルドしようとしてもエラーになってしまいます。
ビルドに失敗した場合
ChromeDriver.exe
を
ChromeDriver.exe_
に一旦リネームします。
そして、新に再ビルドします。
すると新に
ChromeDriver.exe
が生成されます。
この手順を行った上でビルドをしないとVisual StudioがChrome Driverのプロセスをどうやらつまんだままの状態でビルドエラーが出てしまいます。