【问题标题】:How to bypass Safari Certificate Check with Selenium如何使用 Selenium 绕过 Safari 证书检查
【发布时间】:2015-12-17 07:09:48
【问题描述】:

我一直在尝试在 Windows 上运行我的 Safari 测试,但我找不到绕过安全检查“Safari 无法识别此网站的身份”的方法。有没有办法解决这个问题?

【问题讨论】:

  • 您是否一直尝试手动接受站点的证书/身份?您会一直在同一台计算机上运行此测试吗?您使用的证书是自签名的吗?
  • 我最终会使用 RemoteWebDriver,但现在我正尝试从我的本地计算机启动它。我已经安装了证书,现在它显示为“此证书正常。”。但是,每当我尝试打开页面时,我都会得到这个“Safari 无法识别......”,最后有一个按钮继续。所以我正在寻找一个黑客,也许是一个点击继续按钮的 JS?
  • 我现在无法访问 Safari,但请查看是否可以通过 Selenium 单击该按钮。在 Chrome 和 Firefox 中,您可以单击这样的按钮,因为它们是标准 HTML 元素。
  • 不,它不能用 selenium 点击...这是主要问题...它会在浏览器中弹出一个类似按钮的窗口。

标签: c# selenium safari ssl-certificate


【解决方案1】:

解决方案:

  • 手动接受证书。
  • 使用 Selenium 单击继续按钮。
  • 像平常一样访问此应用程序。

【讨论】:

  • 您尝试添加手动单击继续按钮的代码?您可以发布带有继续按钮的屏幕的 HTML 吗?
  • 没有这样的选项....继续按钮是windows窗口的一部分,不能用selenium代码点击它,因为selenium只读取htlm...
  • stackoverflow.com/a/23647288/2241348 这看起来可能是一个有用的帖子。不幸的是,这似乎是 Safari 的一个限制。 Chrome 和 Firefox 都将这些屏幕显示为 HTML,因此您可以跳过它们。
【解决方案2】:

在 Mac 中,您可以在 driver.get() 的处理程序运行此 applescript 之前启动超时线程

tell application "System Events" 
    tell application process "Safari"
        click button "Continue" of group 2 of sheet 1 of window 1
    end tell
end tell

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-06
    • 2021-09-18
    • 2021-02-08
    • 1970-01-01
    • 2016-04-19
    • 1970-01-01
    • 2020-10-23
    • 1970-01-01
    相关资源
    最近更新 更多