chromedriver clear cache - java

Ben*_*Ben 4 javascript java selenium selenium-chromedriver

如何在java中清除chromedriver的新实例的缓存?我正在尝试这个,但我不太确定还能做什么?是否有可能创建一个javascript hack来清除JS中的缓存,我可以从我的驱动程序调用?

private static WebDriver makeDriver() {
    DesiredCapabilities capabilities = DesiredCapabilities.chrome();
    capabilities.setCapability(CapabilityType.ForSeleniumServer.ENSURING_CLEAN_SESSION, true);
    System.setProperty("webdriver.chrome.driver", "chromedriver.exe");
    ChromeDriver driver = new ChromeDriver();
    driver.manage().deleteAllCookies();
    return driver;
}
Run Code Online (Sandbox Code Playgroud)

ale*_*cxe 7

默认情况下,具有空缓存,本地存储,cookie的完全干净的配置文件由selenium启动.你实际上正在私下浏览 selenium.

首先,您的代码中存在一个问题 - 您没有将您的DesiredCapabilities实例传递给webdriver构造函数(尽管未经过测试):

ChromeDriver driver = new ChromeDriver(capabilities);
Run Code Online (Sandbox Code Playgroud)

您也可以尝试强制"隐身"模式:

DesiredCapabilities capabilities = DesiredCapabilities.chrome();

capabilities.setCapability(CapabilityType.ForSeleniumServer.ENSURING_CLEAN_SESSION, true);
capabilities.setCapability("chrome.switches", Arrays.asList("--incognito"));

ChromeDriver driver = new ChromeDriver(capabilities);
Run Code Online (Sandbox Code Playgroud)