我目前正在使用适用于Firefox的新Marionette驱动程序更新我的C#解决方案。
我已设法让驱动程序成功启动包含以下代码的网址
FirefoxDriverService service = FirefoxDriverService.CreateDefaultService(Directory.GetCurrentDirectory(),"wires-0.6.0-win.exe");
service.FirefoxBinaryPath = @"C:\Program Files (x86)\Mozilla Firefox\firefox.exe";
FirefoxDriver driver = new FirefoxDriver(service);
driver.Navigate().GoToUrl("http://www.google.com");
但是我需要在初始化时向驱动程序添加配置文件以设置代理。我以前就像下面这样做(对于较旧的Firefox版本)。
private static IWebDriver InitialiseFirefoxDriver(Proxy proxy)
{
FirefoxProfile profile = new FirefoxProfile();
if (proxy != null)
{
profile.SetProxyPreferences(proxy);
}
return new FirefoxDriver(profile);
}
不幸的是,FirefoxDriver构造函数只允许我传入FirefoxDriverService或FirefoxProfile。有没有人知道我可以设法在创建驱动程序之前(甚至之后)为驱动程序提供两组配置信息?
感谢。
答案 0 :(得分:0)
这是示例代码使用FirefoxProfile& FirefoxDriverService。我想隐藏CommandPromptWindow和Mute。
FirefoxDriverService service = FirefoxDriverService.CreateDefaultService();
service.HideCommandPromptWindow = true;
FirefoxProfile _Profile = new FirefoxProfile();
_Profile.SetPreference("media.volume_scale", "0.0");
FirefoxOptions option = new FirefoxOptions();
option.Profile = _Profile;
var driver = new FirefoxDriver(service,option,TimeSpan.FromSeconds(20));
driver.Navigate().GoToUrl("https://www.youtube.com/watch?v=hxiitzCKRek");