Firefox驱动程序不将会话和cookie保存在配置文件中

时间:2018-08-29 20:33:20

标签: c# selenium selenium-webdriver selenium-firefoxdriver

我正在使用firefox进行修改,我需要保持登录始终处于活动状态,即,保持会话,cookie等。 我为selenium设置了一个默认用户,而不是创建临时用户,但似乎Firefox每次终止时都会忽略并清除会话,cookie,历史记录以及所有内容。 在chrome驱动程序中,可以完美地通知默认配置文件,但是很遗憾,我无法使用chrome。

对此有什么解决办法吗?

public IWebDriver StartFirefoxDriver(string url, string driverLocation, bool headless = false)
{
    var service = FirefoxDriverService.CreateDefaultService(driverLocation, "geckodriver.exe");
    service.FirefoxBinaryPath = @"C:\Program Files\Mozilla Firefox\firefox.exe";
    service.HideCommandPromptWindow = true;

    var test = new FirefoxProfile(@"C:\Users\gabriels\AppData\Local\Mozilla\Firefox\Profiles\zq9sf3jp.Whats");
    test.DeleteAfterUse = false;

    var firefoxOptions = new FirefoxOptions();

    firefoxOptions.Profile = test;

    if (headless)
        firefoxOptions.AddArgument("--headless");


    var driver = new FirefoxDriver(service, firefoxOptions);

    driver.Navigate().GoToUrl(url);



    return driver;

}

1 个答案:

答案 0 :(得分:0)

我保存个人资料的位置不正确,这对任何犯同样错误的人都是一个教训。

正确的位置是:

  

C:\ Users \ gabriels \ AppData \ Roaming \ Mozilla \ Firefox \ Profiles \