LoginSignup
0
3

More than 1 year has passed since last update.

Chromeドライバー更新問題を解決

Last updated at Posted at 2022-12-04

この記事によって実現できること
Python SeleniumによるスクレイピングでChromeドライバー更新地獄から開放

はじめに

こういう悩みありませんか?
Python × Selenium × Chromeでブラウザ操作自動化をしてるけど、ブラウザバージョン更新のたびにChromeDriverを手動で更新するのが面倒。。。

qiita.py
from selenium import webdriver
 
driver = webdriver.Chrome()
driver.get('https://google.com')

しかし、Google ChromeがアップデートされるたびにChromeDriverとのバージョン違いでエラーになってしまいます。(SessionNotCreatedEception)

$ python qiita.py
Traceback (most recent call last):
File "/ファイルのパス/qiita.py", line 4, in <module>
driver = webdriver.Chrome()
File "/opt/anaconda3/lib/python3.7/site-packages/selenium/webdriver/chrome/webdriver.py", line XX, in __init__
〜省略〜
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version XX

これが出るたびに下記作業をしなければなりません。


  1. 現在のブラウザバージョンを確認
  2. 現在のブラウザバージョンに合ったWebDriverをダウンロード/インストールする

実は、「webdriver_manager」というライブラリを使うことで面倒臭い手作業から永遠に開放されるんです!
しかも、すでに使用しているコードでもすぐに修正できちゃいます!

ChromeDriver(WebDriver)を自動更新する「webdriver_manager」導入方法

やること
①webdriver_managerをインストール
②コード編集

①webdriver_managerをインストール

$ pip install webdriver-manager

上記コードを打ち込んじゃいましょう。

〜省略〜
Successfully installed 〜〜

が出てきたら完了です!

②コード編集

次にコードを書き換えましょう!

before.py
from selenium import webdriver
 
driver = webdriver.Chrome()
driver.get('https://google.com')

after.py
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
 
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.get('https://google.com')

たったこれだけなんです!

Chromeドライバー更新地獄からの脱出おめでとうございます!

この記事によって実現できること
Python SeleniumによるスクレイピングでChronmeドライバー更新地獄から開放

0
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
3