【Webドライバのバージョン問題をスッキリ解決!】SeleniumのWebdriver Managerの紹介

OSWindows 10 64bit
Python3.10.2
Selenium4.3.0
webdriver_manager3.8.1

概要

Webdriver Managerは、Seleniumを使用する際に必要なブラウザのWebドライバの導入を自動化してくれるPythonライブラリです。

Webドライバ導入では、お使いのブラウザのバージョンに合ったWebドライバをダウンロードし、所定の場所へ配置、プログラム上でその場所を指定しないといけません。さらに、Seleniumを使ったプログラムが当時は動作していたのに突然動かなくなったといったことがよくあります。原因はブラウザのバージョンが上がったために、ドライバ都のバージョン不一致が原因で動作しなくなったということが多くの場合考えられます。

これらの煩わしい作業やバージョン不一致問題を解決してくれるのが、Webdriver Managerです。
本記事では、Webdriver ManagerのインストールとGoogle Chromeブラウザにおける簡単な使用方法をご紹介します。

Seleniumについては、以下の記事をご覧ください。

【スクレイピングのド定番】Seleniumの紹介【スクレイピングのド定番】Seleniumの紹介

インストール

Shell
pip install webdriver-manager

使い方

先述した通り、Google Chromeブラウザにおける使用方法を紹介します。
別のブラウザでの使用方法はドキュメントを参考にしてください。

基本的な使い方

Python
from selenium import webdriver
from selenium.webdriver.chrome.service import Service as ChromeService
from webdriver_manager.chrome import ChromeDriverManager

driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()))

seleniumの初期化時に、このように記述することでWebドライバを自動的にインストールしてくれます。

環境変数の設定

Webdriver Managerでは環境変数を設定値として読込み動作しています。設定項目と概要を以下に載せます。

GH_TOKEN

Webdriver Managerはwebドライバによってはgithubのリポジトリからダウンロードしており、
未認証ユーザへのgithubリクエスト制限を防ぐため、githubアクセストークンを指定します。

WDM_LOG

Webdriver Manager上でログを使用しないようにできます。

WDM_LOCAL

デフォルトでは、ユーザフォルダの.wdmフォルダにドライバが保存されますが、1を設定設定することでプロジェクトルートフォルダの.wdmフォルダに保存されるようになります。

WDM_SSL_VERIFY

0を設定することで、SSLの検証を無効にします。

初期化時の設定

初期化時にパラメータを設定することができます。

path

保存するフォルダを指定することができます。

version

webドライバのバージョンを指定します。

cache_valid_range

ブラウザの情報やドライバの情報をデフォルトで有効期間1日キャッシュとして残しています。
そのキャッシュ有効期間を指定します。

まとめ

本記事ではWebドライバを自動でインストールしてくれるWebdriver Managerライブラリをご紹介しました。

このライブラリを導入することで、Webブラウザ更新に伴うWebドライバ更新という煩わしい作業から解放されます。
ぜひ活用してみてください。

参考

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です