You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何使用SeleniumWire时出现OpenSSL.crypto.Error: [(‘PEM routines’,’’,’no start line’)]错误?

错误原因分析:OpenSSL.crypto.Error: [('PEM routines', '', 'no start line')]

错误信息

OpenSSL.crypto.Error: [('PEM routines', '', 'no start line')]. 

涉事代码

from seleniumwire import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())

这个错误是SeleniumWire特有的,根源在于它的核心工作机制——拦截HTTPS请求需要依赖CA证书,而普通Selenium不需要处理证书拦截逻辑,因此不会触发该问题。具体原因可分为以下几种:

  • 证书生成失败:SeleniumWire首次启动时,会自动在用户目录下创建.seleniumwire文件夹,并生成CA证书文件(ca.crt、ca.key)。如果生成过程中遇到权限不足、磁盘空间不够、系统OpenSSL环境异常等情况,会导致证书文件损坏或未正确生成,后续读取时就会抛出PEM格式错误。
  • 旧损坏证书残留:之前运行SeleniumWire时生成的CA证书已损坏(比如文件内容为空、格式被篡改),再次启动时程序尝试读取这些无效证书,引发错误。
  • 权限不足:程序没有权限访问.seleniumwire目录,既无法生成新证书,也无法读取已存在的证书文件,导致证书加载失败。
  • 配置路径错误:如果手动修改过SeleniumWire的证书存储路径,指向了非PEM格式的文件,或者路径本身不存在,也会触发该错误。

快速验证方法

可以检查用户目录下的.seleniumwire文件夹,查看其中的ca.crt和ca.key文件:

  • 正常的PEM格式证书开头应包含-----BEGIN CERTIFICATE-----
  • 私钥文件开头应包含-----BEGIN RSA PRIVATE KEY-----
    如果文件为空、内容缺失或格式不符,即可确认是证书问题导致的错误。

内容的提问来源于stack exchange,提问作者GORGONZOLA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 02:12:03