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

导入s3fs报错:无法从botocore.httpsession导入InvalidProxiesConfigError

问题原因

报错核心是Python依赖包版本冲突,具体对应关系如下:

  • 你使用的s3fs==2021.5.0依赖aiobotocore==1.4.2,而该版本的aiobotocore要求botocore版本必须介于1.20.106~1.20.107之间
  • 你安装的boto3==1.18.65绑定的botocore版本为1.19.28,远低于aiobotocore要求的最低版本,导致aiobotocore导入时找不到高版本botocore才有的InvalidProxiesConfigError类,直接抛出导入错误
  • 额外的fsspec版本不兼容是第二个隐患:s3fs==2021.5.0要求fsspec严格为2021.05.0,你环境中的fsspec版本为2021.10.1,也会引发潜在运行异常

此前运行正常是因为之前的环境中几个依赖版本刚好匹配,近期大概率是环境内的boto3、fsspec等包被更新,破坏了版本匹配关系。

解决方案

可根据你的业务限制任选一种方案执行:

  • 方案1:固定全量依赖版本保证兼容
    先执行pip3 uninstall -y s3fs aiobotocore botocore fsspec boto3卸载现有冲突依赖,再把requirements.txt替换为以下经过验证的兼容版本组合,重新执行pip3 install -r requirements.txt即可:
    boto3==1.18.65
    botocore==1.21.65
    s3fs==2021.08.0
    fsspec==2021.08.1
    fastparquet==0.7.1
    aiobotocore==1.4.2
    
  • 方案2:升级boto3适配现有s3fs版本
    如果你不想修改s3fs版本,直接执行以下命令升级对应依赖即可解决冲突:
    pip3 install boto3==1.20.26 fsspec==2021.05.0
    
    该版本的boto3绑定的botocore刚好符合aiobotocore 1.4.2的版本要求,同时补装对应版本的fsspec解决第二个不兼容问题。
  • 方案3:升级到高版本s3fs避免冲突
    如果没有旧版本依赖限制,直接升级到更新的稳定版s3fs即可,新版本对依赖的适配性更好:
    pip3 install s3fs==2023.10.0 fsspec==2023.10.0 boto3==1.28.85
    
    该版本组合不存在依赖冲突,可直接满足dataframe写入S3的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 00:36:05