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

Boto3启动报错TypeError:deprecated()收到意外参数‘name’求助

解决Boto3导入时的TypeError(OpenSSL.utils.deprecated()意外关键字参数'name')

这个问题我之前踩过坑,大概率不是Boto3本身的问题,而是pyopenssl版本不兼容导致的——你看到的错误是因为某个依赖库在调用OpenSSL.utils.deprecated()时传入了name参数,但当前安装的pyopenssl新版本已经移除了这个参数的支持。

试试下面的步骤解决:

  1. 检查当前pyopenssl版本
    先确认你当前安装的pyopenssl版本:

    pip show pyopenssl
    

    如果版本是23.2.0及以上,基本可以确定就是这个版本的兼容性问题。

  2. 降级pyopenssl到兼容版本
    安装一个保留name参数支持的旧版本,比如23.1.1:

    pip install pyopenssl==23.1.1 --force-reinstall
    

    加上--force-reinstall是为了确保彻底覆盖现有版本,避免残留文件干扰。

  3. (可选)同步调整cryptography版本
    pyopenssl依赖cryptography库,如果降级后还是报错,可能需要同步调整cryptography的版本:

    pip install cryptography==39.0.1 --force-reinstall
    

    这个版本和pyopenssl 23.1.1是经过验证的兼容组合。

  4. 终极方案:用虚拟环境隔离依赖
    如果Ubuntu 22.04系统自带的全局Python包和你安装的包存在冲突,建议创建独立的虚拟环境来运行Boto3:

    # 创建虚拟环境
    python3 -m venv boto3_venv
    # 激活虚拟环境
    source boto3_venv/bin/activate
    # 安装Boto3(会自动拉取兼容的依赖版本)
    pip install boto3
    

    在这个隔离环境里运行代码,就能避开全局包的冲突问题了。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 17:06:50