首页 > 解决方案 > Selenium chrome 驱动程序无法建立安全连接

问题描述

我正在尝试安全地连接到具有有效 SSL 证书的网站。但是,当我使用 Selenium 连接时,Chrome 浏览器说连接不安全。如果我单击 url 栏中的“不安全”标志,它会显示“您与此站点的连接不安全”。如果我单击此下方显示证书(无效)的链接,则会打开一个新窗口,其中包含有关证书的详细信息,其中显示“此证书有效”。我该如何理解这种荒谬的差异?

我可以安全地连接到一些网站。例如,连接到https://www.google.com不会导致同样的问题。我遇到问题的网站使用的是 LetsEncrypt 的证书。我真的不知道这个问题是否与此有关,但证书有什么问题或为什么 Selenium 有问题?

顺便说一句,我可以使用驱动程序选项中的“ignore-certificate-errors”标志让 Selenium 忽略该错误。但是,当我尝试进行身份验证时,这会导致问题。所以这不是一个解决方案。

我使用的代码基本上是这样的,替换了 url 和路径:

driver = webdriver.Chrome('/path/chromedriver')
driver.get('https://xxx')

标签: seleniumgoogle-chromehttpsselenium-chromedriver

解决方案


我发现问题出在我传递给 chrome 驱动程序的 url 中。我错误地将 www 包含在与 ssl 证书中的 url 不匹配的 url 中。在阅读Chrome 说 SSL 无效后,我意识到这可能会导致问题,但是证书是有效的,当您的 chrome 浏览器告诉您 SSL 证书同时有效和​​无效时,这涵盖了令人抓狂的场景。


推荐阅读