【Python】Selenium:Chromeブラウザが起動後すぐに落ちる(閉じる)問題の解決

時計 2021.04.16 / 時計

【Python】Selenium:Chromeブラウザが起動後すぐに落ちる(閉じる)問題の解決

本記事ではPythonのSeleniumを使用したアプリケーションで、Chromeブラウザが起動後すぐに落ちる(閉じる)問題について解説していきます。

Seleniumはブラウザ操作の自動化や、データ収集の自動化などの高度なWeb操作が実現できます。

しかし突然Seleniumで作成したアプリケーションが動作しなくなることがあります。
Seleniumにより起動したChromeがすぐに落ちてしまうのです。

この問題は、Seleniumを使ってアプリ開発をしている人であれば、一度は経験するものです。

原因さえわかってしまえばすぐに解決できる問題ですので、本記事を通して解決方法を学んでください。

Seleniumを使ったアプリで発生したエラー

Seleniumを使ったアプリケーションでは、昨日までは問題なく動作していたのに、突然動かなくなることがあります。

Chromeブラウザが一瞬起動して、即座に落ちるという現象が突然発生します。

初めてこの現象が発生したときは、とても焦った記憶があります。
Seleniumを使った、業務で必要な情報を自動で収集するアプリだったので、すぐに直さなきゃとその時は原因を一生懸命に探しました。

その時は以下のようなエラーが発生していました。

selenium.common.exceptions.SessionNotCreatedException:
Message: session not created:
This version of ChromeDriver only supports Chrome version 〇〇

このエラーの原因を以下で解説いたします。

エラー原因

この現象が発生する原因は、
Chromeブラウザのバージョンとchromedriver.exeのバージョンが異なっていることです。

ご存じの通りChromeにはバージョンがあり、アップデートするたびにバージョンは更新されていきます。

そしてSeleniumでChromeを操作するために使用するchromedriver.exeも、Chromeのバージョンに合ったものを使う必要があるのです。

Chromeは定期的にバージョンアップするので、そのたびにこの現象が発生する可能性が潜んでいます。

そのためchromedriver.exeを定期的に最新版をダウンロードしておく必要があります。

ブラウザが落ちる現象の解決方法

この現象を解決するために、chromedriver.exeをChromeブラウザと同じバージョンに揃えます。

以下の流れでバージョン確認とchromedriver.exeのダウンロードを行いましょう。

  1. Chromeのバージョン確認
  2. Chromeと対応するchromedriver.exeをダウンロード
  3. 古いchromedriver.exeを交換

それでは各方法について以下で解説します。

Chromeのバージョン確認

Chromeブラウザの「設定」を開きます。

Chromeブラウザの設定

表示された設定画面から、「chromeについて」をクリックします。
すると画面右側に現在のバージョンが確認できるようになります。

Chromeブラウザのバージョン確認

ここで確認したバージョンと対応するchromedriver.exeを次にダウンロードします。

Chromeと対応するchromedriver.exeをダウンロード

Chromeブラウザに対応するchromedriver.exeをダウンロードします。

以下サイトにアクセスしてください。

ChromeDriver - WebDriver for Chrome

ChromeDriverのサイトから、Chromeと同バージョンのリンクをクリックして、chromedriver.exeをダウンロードします。

chromedriverのダウンロード

古いchromedriver.exeを交換

今まで使っていたchromedriver.exeを新しくダウンロードしたドライバーと交換します。
上書き保存するだけで大丈夫です。

これでChromeブラウザとchromedriver.exeのバージョンを一致させることができました。

最後にSeleniumを使用したアプリケーションを起動して、正常にアプリが動作することを確認してください。

まとめ

本記事「Selenium:Chromeブラウザが起動後すぐに落ちる(閉じる)問題の解決」はいかがでしたか。

ここで解説した現象は、Seleniumでアプリを作成したら、必ずいつかは遭遇する現象です。

原因を知らなければ焦りますが、原因さえしっていればすぐに解決できるエラー現象です。
定期的にchromedriver.exeの交換が必要だということを頭の片隅に置いといてください。