【发布时间】:2020-10-09 23:59:49
【问题描述】:
我将 Selenium 与 Java 和 Chrome/Firefox 驱动程序一起使用。
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("javascript.enabled", true);
profile.setPreference("security.fileuri.strict_origin_policy", false);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability(FirefoxDriver.PROFILE, profile);
capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
capabilities.setCapability("acceptInsecureCerts",true);
FirefoxOptions options = new FirefoxOptions();
options.addCapabilities(capabilities);
WebDriver webDriver = new FirefoxDriver(options);
尝试读取 CSS 样式表
JavascriptExecutor js = ((JavascriptExecutor) driver);
Object properties = js.executeScript("return document.styleSheets");
我收到以下错误:
Exception in thread "main" org.openqa.selenium.WebDriverException: SecurityError: CSSStyleSheet.cssRules getter: Not allowed to access cross-origin stylesheet
使用 chrome 驱动程序我收到错误 error reading property。
我正在尝试获取页面的 document.styleSheets,但由于 CORS 规则,我无法获取。如何禁用它们?
【问题讨论】:
-
您是否尝试过禁用您的扩展程序/插件——尤其是如果您拥有它的幽灵?
标签: java selenium firefox cross-domain selenium-firefoxdriver