我想用我的扩展启动我的浏览器。在 chrome 中,我可以使用 chromeOptions,如下面的代码示例所示。Firefox 以类似的方式工作。
ChromeOptions options = new ChromeOptions();
options.addExtensions(new File("/path/to/extension.crx"));
但是在 Safari 中没有addExtensions
方法。使用 Safari 执行此操作的正确方法是什么?
我想用我的扩展启动我的浏览器。在 chrome 中,我可以使用 chromeOptions,如下面的代码示例所示。Firefox 以类似的方式工作。
ChromeOptions options = new ChromeOptions();
options.addExtensions(new File("/path/to/extension.crx"));
但是在 Safari 中没有addExtensions
方法。使用 Safari 执行此操作的正确方法是什么?
这可能会有所帮助。 https://github.com/SeleniumHQ/selenium/wiki/SafariDriver
我发现如果你想在 safari 中打开另一个 safari 扩展,你必须从 safari 浏览器本身进行。 https://github.com/SeleniumHQ/selenium/wiki/SafariDriver-Internals#building-the-safaridriver
所以基本上:
$ ./go safari
$SELENIUM_CLIENT/build/javascript/safari-driver/SafariDriver.safariextension
Apple 维护的 safaridriver 实现不支持通过 WebDriver 功能或其他自动化方式配置扩展。如果您认为这是一个值得做的重要功能,请在https://bugreport.apple.com/提交增强请求,并提供有关您的用例的更多详细信息。
您使用的是哪个版本的 Selenium?看起来他们是在 2013safariOptions.addExtensions("..");
年6 月添加的。
SafariOptions options = new SafariOptions();
options.addExtensions(new File("path/to/extension.safariextz"));
WebDriver driver = new SafariDriver(options);
SafariDriver是org.openqa.selenium.safari包中的一个类,用于访问 safari 浏览器
WebDriver driver = new SafariDriver();
driver.get("https://stackoverflow.com");