You need to enable JavaScript to run this app. Anaconda环境下运行Selenium报SSL模块不可用的HTTPS连接错误求解
优惠活动
大模型
产品
解决方案
定价
更多

Anaconda环境下运行Selenium报SSL模块不可用的HTTPS连接错误求解

问题核心根因

报错的核心触发点是当前Anaconda虚拟环境的Python解释器未关联可用的OpenSSL模块,导致所有依赖HTTPS的请求都会直接抛出SSL不可用的错误——和ChromeDriver版本匹配无关,本质是环境层面无法发起加密网络请求。

分步修复方案
  • 第一步:定位确认问题
    1. 激活出问题的虚拟环境:conda activate web-scraper
    2. 在当前环境的Python交互终端执行测试代码:
      import ssl
      print(ssl.OPENSSL_VERSION)
      
    3. 若执行后直接抛出ModuleNotFoundError或提示SSL模块缺失,即可确认是环境依赖问题。
  • 第二步:补全SSL核心依赖
    必须通过conda渠道安装对应依赖,避免pip安装的库和Anaconda环境的Python解释器无法关联:
    1. 在激活的虚拟环境中执行安装命令:conda install -c conda-forge openssl ca-certificates certifi
    2. 安装完成后重新执行之前的SSL测试代码,能正常输出OpenSSL的版本信息即代表基础依赖修复完成。
    3. 同步更新环境内的网络请求相关依赖,避免版本兼容问题:pip install --upgrade requests urllib3 certifi
  • 第三步:绕开自动下载逻辑的备选方案
    如果上述步骤完成后,webdriver_manager联网拉取ChromeDriver仍然受网络访问限制报错,可以直接手动配置ChromeDriver路径,跳过自动下载环节:
    1. 打开本地Chrome浏览器,在地址栏输入chrome://settings/help,记录下浏览器的完整版本号(和报错提示的版本号匹配即可)。
    2. 手动下载对应版本的ChromeDriver可执行文件,解压后在代码中指定路径初始化浏览器,示例代码:
      from selenium import webdriver
      from selenium.webdriver.chrome.service import Service
      
      # 替换为本地chromedriver.exe的实际存储路径
      service = Service(r"C:\Users\Nick\Downloads\chromedriver.exe")
      driver = webdriver.Chrome(service=service, options=options)
      
  • 极端情况修复
    若多次尝试后环境仍然存在SSL模块缺失问题,直接删除有问题的虚拟环境,创建新环境时预装核心依赖,避免后续依赖冲突:
    1. 删除异常环境:conda env remove -n web-scraper
    2. 创建新环境时直接绑定SSL相关依赖:conda create -n web-scraper python=3.10 openssl ca-certificates certifi requests
    3. 激活新环境后再安装Selenium相关依赖即可正常运行。
注意事项
  • 不要直接把Anaconda base环境下的OpenSSL相关库文件复制到子环境中,会打乱conda的依赖管理逻辑,触发更多不可预期的报错。
  • 安装依赖时优先使用conda渠道安装系统级的加密、证书类库,再用pip安装Python第三方包,避免出现解释器找不到对应库的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.01 14:45:03