Maison > Java > javaDidacticiel > Comment résoudre l'erreur « Chemin d'accès au pilote exécutable » dans Selenium avec Java et GeckoDriver ?

Comment résoudre l'erreur « Chemin d'accès au pilote exécutable » dans Selenium avec Java et GeckoDriver ?

Susan Sarandon
Libérer: 2024-12-14 19:44:12
original
180 Les gens l'ont consulté

How to Resolve the

Selenium utilisant Java : résolution de l'erreur « Chemin d'accès à l'exécutable du pilote » pour GeckoDriver

Le problème :

Lors du lancement de Mozilla, les utilisateurs peuvent rencontrer une erreur indiquant que « Le chemin d'accès à l'exécutable du pilote doit être défini. par la propriété système webdriver.gecko.driver."

La cause :

Cette erreur se produit lorsque le client Selenium ne parvient pas à localiser l'exécutable GeckoDriver dans le chemin système.

La solution :

Pour résoudre ce problème, ajoutez le répertoire contenant l'exécutable GeckoDriver sur le chemin du système.

  • Systèmes Unix :

    export PATH=$PATH:/path/to/geckodriver
    Copier après la connexion
  • Systèmes Windows :
    Mettez à jour la variable système Path pour inclure le chemin complet du répertoire vers le exécutable.

Considérations supplémentaires :

  • Pour Selenium 3.0 et versions ultérieures, Marionette est activé par défaut, éliminant ainsi le besoin d'une configuration explicite.
  • Pour utiliser explicitement Marionette dans l'ancien Selenium versions :

Java :

// Set the system property for the GeckoDriver path
System.setProperty("webdriver.gecko.driver", "path/to/geckodriver.exe");

// Initialize the Marionette driver
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette", true);
WebDriver driver = new MarionetteDriver(capabilities);
Copier après la connexion
  • .NET :

    var driver = new FirefoxDriver(new FirefoxOptions());
    Copier après la connexion
  • Python :

    from selenium import webdriver
    
    # Set the desired capabilities
    caps = DesiredCapabilities.FIREFOX
    caps["marionette"] = True
    caps["binary"] = "/usr/bin/firefox"
    
    # Create the Firefox driver
    driver = webdriver.Firefox(capabilities=caps)
    Copier après la connexion
  • Rubis :

    # Selenium 3 uses Marionette by default
    driver = Selenium::WebDriver.for :firefox, marionette: true
    Copier après la connexion
  • JavaScript (Node.js) :

    const webdriver = require('selenium-webdriver');
    const Capabilities = require('selenium-webdriver/lib/capabilities').Capabilities;
    
    // Set the desired capabilities
    var capabilities = Capabilities.firefox();
    capabilities.set('marionette', true);
    
    // Create the Firefox driver
    var driver = new webdriver.Builder().withCapabilities(capabilities).build();
    Copier après la connexion

RemoteWebDriver :

  • Python :

    caps = DesiredCapabilities.FIREFOX
    caps["marionette"] = True
    
    driver = webdriver.Firefox(capabilities=caps)
    Copier après la connexion
  • Rubis :

    caps = Selenium::WebDriver::Remote::Capabilities.firefox marionette: true, firefox_binary: "/path/to/firefox"
    
    driver = Selenium::WebDriver.for :remote, desired_capabilities: caps
    Copier après la connexion
  • Java :

    DesiredCapabilities capabilities = DesiredCapabilities.firefox();
    capabilities.setCapability("marionette", true);
    
    WebDriver driver = new RemoteWebDriver(capabilities);
    Copier après la connexion
  • .NET :

    DesiredCapabilities capabilities = DesiredCapabilities.Firefox();
    capabilities.SetCapability("marionette", true);
    
    var driver = new RemoteWebDriver(capabilities);
    Copier après la connexion

Par en suivant ces étapes, vous pouvez résoudre l'erreur et lancer avec succès Mozilla en utilisant Selenium avec Java.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal