Safari 特定功能

这些是 Apple Safari 浏览器特有的功能和特性。

与 Chromium 和 Firefox 驱动程序不同,safaridriver 是随操作系统一起安装的。 要在 Safari 上启用自动化,请从终端运行以下命令

safaridriver --enable

选项

所有浏览器通用的功能在选项页面上描述。

Safari 独有的功能可以在 Apple 的页面关于 Safari 的 WebDriver 中找到

使用基本定义的选项启动 Safari 会话如下所示

移动代码

        SafariOptions options = new SafariOptions();
        driver = new SafariDriver(options);
    options = webdriver.SafariOptions()
    driver = webdriver.Safari(options=options)
            var options = new SafariOptions();
            driver = new SafariDriver(options);
      options = Selenium::WebDriver::Options.safari
      @driver = Selenium::WebDriver.for :safari, options: options
    let driver = new Builder()
      .forBrowser(Browser.SAFARI)
      .setSafariOptions(options)
      .build();
  val options = SafariOptions()
  val driver = SafariDriver(options)

移动端

那些希望在 iOS 上自动化 Safari 的人应该查看Appium 项目

服务

所有浏览器通用的服务设置在服务页面上描述。

日志记录

与其他浏览器不同,Safari 不允许您选择日志输出的位置或更改级别。唯一可用的选项是关闭或打开日志。如果日志被切换为打开状态,它们可以在以下位置找到:~/Library/Logs/com.apple.WebDriver/

Selenium v4.10

                .withLogging(true)

注意:Java 还允许通过系统属性设置控制台输出;
属性键:SafariDriverService.SAFARI_DRIVER_LOGGING
属性值:"true""false"

    service = webdriver.SafariService(service_args=["--diagnose"])

Safari 技术预览版

Apple 提供了其浏览器的开发版本——Safari 技术预览版

        options.setUseTechnologyPreview(true);
        driver = new SafariDriver(options);
    options = webdriver.SafariOptions()
    options.use_technology_preview = True
    service = webdriver.SafariService(
        executable_path='/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver'
    )
    driver = webdriver.Safari(options=options, service=service)
    Selenium::WebDriver::Safari.technology_preview!
    local_driver = Selenium::WebDriver.for :safari
上次修改时间 2024年11月19日: [js] fix line numbers [deploy site] (e4b258f753f)