selenium で Chrome と ChromeDriverのバージョンが合わないときに自動で合うバージョンをインストールしてくれる
習慣化209日目
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 80
Seleniumを実行する際、ChromeとChromeDriverのバージョンがマッチしていないと上記のようなエラーが出る。
合っているバージョンを探してインストールしたりするがそれが結構面倒くさい。
下記サイトの通りに設定すると自動で合うバージョンをインストールしてくれる。
めちゃ便利!
【Selenium】ChromeDriverを自動更新するPythonライブラリが便利 | ゆうきのせかい
https://yuki.world/python-selenium-chromedriver-auto-update/
インストールして
pip3 install webdriver_manager
インポート
インボート部分を抜粋
#モジュールをインポート
from selenium import webdriver
# 【Selenium】ChromeDriverを自動更新するPythonライブラリが便利 | ゆうきのせかい
# https://yuki.world/python-selenium-chromedriver-auto-update/
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from bs4 import BeautifulSoup
##httpリクエスト関連
import requests
# chromeが画面上で立ち上がらずに処理するためのSelenium用オプション
op = Options()
op.add_argument("--disable-gpu");
op.add_argument("--disable-extensions");
op.add_argument("--proxy-server='direct://'");
op.add_argument("--proxy-bypass-list=*");
op.add_argument("--start-maximized");
op.add_argument('--no-sandbox')
op.add_argument("--headless");
# オプションを指定してchromeを起動する
driver = webdriver.Chrome(ChromeDriverManager().install(), options=op)
driver.get('https://google.com')
"""
## chromeを立ち上げたい場合は上をコメントアウトして下記を有効にする
"""
# driver = webdriver.Chrome(ChromeDriverManager().install())
# driver.get('https://google.com')