尝试启动Firefox驱动程序时出错



请注意,我在编写一些代码来启动firefox驱动程序时遇到了这个错误:

=================================================

WebDriver.dll 中发生类型为"OpenQA.Senium.DriverServiceNotFoundException"的未处理异常

附加信息:geckodriver.exe文件不存在于当前目录或PATH环境变量上的目录中。驱动程序可在下载https://github.com/mozilla/geckodriver/releases.

这是代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;
using System.Threading.Tasks;

namespace FireFox_Driver_Launch
{
class Program
{
static void Main(string[] args)
{
var Driver = new FirefoxDriver();
Driver.Navigate().GoToUrl("http://www.starwoodhotels.com/preferredguest/account/enroll/index.html");
}
}
}

=============================================

我还添加了"Manager Nuget Packages"中的selenium网络驱动程序包。

我已经搜索了这个网站&谷歌搜索解决方案。但是,我还没有得到解决方案。

firefox浏览器安装在PC上。

我已经下载了壁虎驱动器。请问,我该如何把它放在PATH中?

我认为应该是在系统环境变量中?

谢谢你的帮助。

您需要按照错误消息中的说明安装GeckoDriver。最简单的方法是添加Selenium.Firefox.WebDrivernuget包以及已经安装的Selenium.WebDriver

如果有人正在使用geckodriver,则需要为geckodrive设置路径,该路径可以是绝对路径,也可以指定geckoddriver.exe相对于项目的路径。

System.setProperty("webdriver.gecko.driver", "./myGeckodriverPathFolder/geckodriver.exe");
File pathToBinary = new File("C:\Program Files\Mozilla Firefox\firefox.exe");
FirefoxBinary ffBinary = new FirefoxBinary(pathToBinary);
FirefoxProfile firefoxProfile = new FirefoxProfile();       

WebDriver driver = new FirefoxDriver(ffBinary, firefoxProfile);

如果使用geckdriver路径作为绝对路径,则"C:\myGeckodriverPathFolder\geckodriver.exe"

我也遇到过同样的问题,但通过在Nuget包管理器中安装Selenium.Firefox.WebDriver解决了这个问题。

从NuGet包管理器安装Selenium.Firefox.Webdriver,然后重新构建解决方案,它就可以工作了。

相关内容

  • 没有找到相关文章

最新更新