如何在 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;
}
最佳答案
默认情况下,具有空缓存、本地存储和 cookie 的完全干净的配置文件由 selenium 启动。你其实是browsing privately用 Selenium 。
首先,您的代码中存在问题 - 您没有将 DesiredCapabilities
实例传递给 webdriver 构造函数(尽管未测试):
ChromeDriver driver = new ChromeDriver(capabilities);
您也可以尝试 forcing the "incognito" mode :
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
capabilities.setCapability(CapabilityType.ForSeleniumServer.ENSURING_CLEAN_SESSION, true);
capabilities.setCapability("chrome.switches", Arrays.asList("--incognito"));
ChromeDriver driver = new ChromeDriver(capabilities);
关于javascript - chromedriver 清除缓存 - java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33529585/