【问题标题】:Python Webdriver - Firefox profiles - Error code: SEC_ERROR_UNKNOWN_ISSUER -Python Webdriver - Firefox 配置文件 - 错误代码:SEC_ERROR_UNKNOWN_ISSUER -
【发布时间】:2018-11-19 16:37:48
【问题描述】:

通读整个互联网,但在我的测试环境中尝试运行测试脚本时仍然无法解决以下错误

"证书不受信任,因为颁发者证书是 未知。服务器可能没有发送适当的中间 证书。可能需要导入额外的根证书。”

所有软件版本如下: 火狐 - 60.0.2 蟒蛇 - 3.6 硒 - 3.12.0 壁虎司机 - 20.1

尝试了以下方法但失败了: 1- 创建自定义 firefox 配置文件并尝试调用 webdriver 代码

 profile = webdriver.FirefoxProfile("C:/Users/username/AppData/Roaming/Mozilla/Firefox/Profiles/p88ifbjn.Sel")
 profile.set_preference('webdriver_assume_untrusted_issuer', True)
 profile.update_preferences()
 driver = webdriver.Firefox(firefox_profile=profile)

2- 二进制代码 3 - 接受不受信任的代码 4 - 尝试手动接受证书

对我没有任何帮助,如果有人可以提供帮助,请告诉我,我是自动化新手

【问题讨论】:

  • 提供的大部分答案都是针对 Java 的,需要 Python 的指导,请帮忙,因为我已经浪费了 3 天的时间来搜索互联网,但没有运气

标签: python-3.x selenium-webdriver browser-automation


【解决方案1】:

我四处搜索,也找不到有效的答案。有趣的是,我发现通过更新一些已经讨论过的设置,无论出于何种原因,它都可以在 iPython 控制台中运行,但不能在终端中运行。于是我去比较了about:config中所有修改过的配置。存在三个不同的偏好项目。在 Mac OS 和 Ubuntu 中,更新它们实际上对我来说很神奇。这是代码。请注意,您必须通过更改默认首选项来更新它们。在 Firefox 63.0.3 中使用 geckodriver 版本 0.23.0 测试的代码。

from selenium import webdriver

profile = webdriver.FirefoxProfile()
profile.DEFAULT_PREFERENCES['frozen']['marionette.contentListener'] = True
profile.DEFAULT_PREFERENCES['frozen']['network.stricttransportsecurity.preloadlist'] = False
profile.DEFAULT_PREFERENCES['frozen']['security.cert_pinning.enforcement_level'] = 0
profile.set_preference('webdriver_assume_untrusted_issuer', False)
profile.set_preference("browser.download.folderList", 2)
profile.set_preference("browser.download.manager.showWhenStarting", False)
profile.set_preference("browser.download.dir", temp_folder)
profile.set_preference("browser.helperApps.neverAsk.saveToDisk",
                       "text/plain, image/png")
driver = webdriver.Firefox(firefox_profile=profile)

【讨论】:

    【解决方案2】:

    这个代码块对我有用:

    from selenium import webdriver
    
    profile = webdriver.FirefoxProfile()
    profile.set_preference("security.enterprise_roots.enabled", True)
    
    driver = webdriver.Firefox(firefox_profile=profile)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-07
      • 2015-10-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多