Java を使用した Selenium: 「ドライバー実行可能ファイルへのパス」問題の解決
Selenium を使用して Mozilla を起動しようとすると、エラー: 「ドライバー実行可能ファイルへのパスは、webdriver.gecko.driver システム プロパティで設定する必要があります。」この問題は、Selenium がブラウザと通信できるように「geckodriver」実行可能ファイルの場所を設定する必要があるために発生します。
解決策
この解決策には、システム パスには、「geckodriver」実行可能ファイルが存在するディレクトリが含まれます。場所:
export PATH=$PATH:/path/to/geckodriver
Marionette 用の Selenium の構成
Firefox の自動化ドライバーである Marionette を使用するには、必要な機能を更新します:
Java
システム プロパティをgeckodriver の場所を確認し、必要な機能を使用してドライバーを初期化します:
System.setProperty("webdriver.gecko.driver", "path/to/geckodriver.exe"); DesiredCapabilities capabilities = DesiredCapabilities.firefox(); capabilities.setCapability("marionette", true); WebDriver driver = new MarionetteDriver(capabilities);
Selenium 3
追加の構成を行わずにデフォルトの FirefoxDriver を使用するだけです。
.NET
を使用しますFirefoxOptions クラス:
var driver = new FirefoxDriver(new FirefoxOptions());
Python
必要なモジュールをインポートし、機能を設定します:
from selenium import webdriver from selenium.webdriver.common.desired_capabilities import DesiredCapabilities caps = DesiredCapabilities.FIREFOX caps["marionette"] = True driver = webdriver.Firefox(capabilities=caps)
Ruby
Firefox のパスを設定して有効にしますMarionette:
require 'selenium-webdriver' Selenium::WebDriver::Firefox::Binary.path = "/path/to/firefox" driver = Selenium::WebDriver.for :firefox, marionette: true
JavaScript (Node.js)
Marionette の機能を設定します:
const webdriver = require('selenium-webdriver'); const Capabilities = require('selenium-webdriver/lib/capabilities').Capabilities; var capabilities = Capabilities.firefox(); capabilities.set('marionette', true); var driver = new webdriver.Builder().withCapabilities(capabilities).build();
さらに、 について任意の場所での RemoteWebDriver の使用法言語:
Python
必要な機能を設定します:
caps = DesiredCapabilities.FIREFOX caps["marionette"] = True driver = webdriver.Firefox(capabilities=caps)
Ruby
能力class:
caps = Selenium::WebDriver::Remote::Capabilities.firefox marionette: true, firefox_binary: "/path/to/firefox" driver = Selenium::WebDriver.for :remote, desired_capabilities: caps
Java
DesiredCapabilities capabilities = DesiredCapabilities.firefox(); capabilities.setCapability("marionette", true); WebDriver driver = new RemoteWebDriver(capabilities);
.NET
DesiredCapabilities capabilities = DesiredCapabilities.Firefox(); capabilities.SetCapability("marionette", true); var driver = new RemoteWebDriver(capabilities);
次の手順に従うことで、 「ドライバー実行可能ファイルへのパス」の問題を解決し、Selenium を使用して Mozilla を正常に起動できます。
以上がFirefox で Selenium を使用するときに発生する「ドライバー実行可能ファイルへのパス」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。