【发布时间】:2022-07-15 00:38:51
【问题描述】:
在 Firefox 版本 97 和 98 中,当我在 iframe 中切换并截取屏幕截图时出现异常: org.openqa.selenium.WebDriverException: SecurityError: Permission denied to access property pageXOffset" on cross-origin object。
方法中出现异常: org.openqa.selenium.remote.RemoteWebDriver.getScreenshotAs
我可以在 iFrame 中执行点击、getText 和所有其他操作。拍摄截图时唯一例外
Chrome 99 不会出现此类问题。
我尝试设置首选项:
profile.setPreference("browser.tabs.remote.useCrossOriginEmbedderPolicy", false);
profile.setPreference("security.csp.enable", false);
profile.setPreference("security.external_protocol_requires_permission", false);
profile.setPreference("security.fileuri.strict_origin_policy", false);
profile.setPreference("browser.tabs.remote.useCrossOriginOpenerPolicy", false);
profile.setPreference("network.http.referer.disallowCrossSiteRelaxingDefault.pbmode", false);
profile.setPreference("dom.block_external_protocol_in_iframes", false);
profile.setPreference("dom.block_download_in_sandboxed_iframes", false);
profile.setPreference("dom.delay.block_external_protocol_in_iframes.enabled", false);
profile.setPreference("dom.block_download_in_sandboxed_iframes", false);
没用。
但是,当我切换到主要内容并截取屏幕截图时,没有例外,但我的整个网页都在 iFrame 内,因此我必须在 iFrame 内切换并截取整页的多个屏幕截图。 有没有人最近在 Firefox 中遇到过这个问题。请帮忙。
我正在使用 Selenium 版本:3.14.0 并使用 WebdriverManager 进行自动驱动程序下载。
如果我可以添加更多信息,请告诉我。
【问题讨论】:
标签: selenium selenium-webdriver geckodriver selenium-firefoxdriver