ドライバーが見つかりません エラー
歴史的に、これは Selenium を使い始めたばかりのユーザーが初めてコードを実行しようとしたときに最もよく遭遇するエラーです。
考えられる原因
WebDriver を通じて、Selenium は主要なブラウザをすべてサポートしています。要求されたブラウザを操作するためには、Selenium は実行可能なドライバを介してコマンドを送信する必要があります。このエラーは、必要なドライバが Selenium が使用しようとするどの手段でも見つからなかったことを意味します。
考えられる解決策
Selenium が必要なドライバを確実に入手するための方法はいくつかあります。
最新バージョンの Selenium を使用する
Selenium 4.6 以降、Selenium は適切なドライバを自動的にダウンロードします。基本的には何もする必要はありません。最新バージョンの Selenium を使用していて、エラーが発生する場合は、ログをオンにして、その情報とともにバグ報告を提出してください。
Selenium がドライバのダウンロードをどのように管理しているかについて詳しく知りたい場合は、Selenium Manager についてお読みください。
PATH
環境変数を使用する
このオプションを使用するには、まず手動でドライバをダウンロードする必要があります。
これは、コードを更新せずにドライバの場所を変更できる柔軟なオプションであり、すべてのマシンでドライバを同じ場所に配置する必要なく、複数のマシンで動作します。
ドライバをすでに PATH
にリストされているディレクトリに配置するか、ディレクトリに配置して PATH
に追加することができます。
PATH
にすでに含まれているディレクトリを確認するには、ターミナルを開いて次を実行します。
echo $PATH
ドライバの場所がリストされているディレクトリにない場合は、新しいディレクトリを PATH に追加できます。
echo 'export PATH=$PATH:/path/to/driver' >> ~/.bash_profile
source ~/.bash_profile
ドライバのバージョンを確認することで、正しく追加されたかどうかをテストできます。
chromedriver --version
PATH
にすでに含まれているディレクトリを確認するには、ターミナルを開いて次を実行します。
echo $PATH
ドライバの場所がリストされているディレクトリにない場合は、新しいディレクトリを PATH に追加できます。
echo 'export PATH=$PATH:/path/to/driver' >> ~/.zshenv
source ~/.zshenv
ドライバのバージョンを確認することで、正しく追加されたかどうかをテストできます。
chromedriver --version
PATH
にすでに含まれているディレクトリを確認するには、コマンドプロンプトを開いて次を実行します。
echo %PATH%
ドライバの場所がリストされているディレクトリにない場合は、新しいディレクトリを PATH に追加できます。
setx PATH "%PATH%;C:\WebDriver\bin"
ドライバのバージョンを確認することで、正しく追加されたかどうかをテストできます。
chromedriver.exe --version
ドライバの場所を指定する
最新バージョンの Selenium にアップグレードできない場合、Selenium にドライバをダウンロードさせたくない場合、環境変数がわからない場合は、Service オブジェクトでドライバの場所を指定できます。
まず、目的のドライバをダウンロードし、該当する Service
クラスのインスタンスを作成して、パスを設定する必要があります。
コード自体に場所を指定すると、システム上の環境変数を把握する必要がないという利点がありますが、コードの柔軟性が低下するという欠点があります。
ドライバ管理ライブラリ
Selenium 自体がドライバを管理するようになる前は、他のプロジェクトが代わりに管理するために作成されていました。
古いバージョンの Selenium を使用しているために Selenium Manager を使用できない場合(アップグレードしてください)、または Selenium Manager でまだ実装されていない高度な機能が必要な場合は、これらのツールのいずれかを試して、ドライバを自動的に最新の状態に保つことができます。
- WebDriverManager (Java)
- WebDriver Manager (Python)
- WebDriver Manager Package (.NET)
- webdrivers gem (Ruby)
ドライバをダウンロードする
ブラウザ | サポートされている OS | 管理者 | ダウンロード | Issue Tracker |
---|---|---|---|---|
Chromium/Chrome | Windows/macOS/Linux | ダウンロード | Issues | |
Firefox | Windows/macOS/Linux | Mozilla | ダウンロード | Issues |
Edge | Windows/macOS/Linux | Microsoft | ダウンロード | Issues |
Internet Explorer | ウィンドウ | Selenium Project | ダウンロード | Issues |
Safari | macOS High Sierra 以降 | Apple | 組み込み | Issues |
注: Opera ドライバは、Selenium の最新機能では動作しなくなり、現在公式にはサポートされていません。