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

Mac端Python3.10导入requests报AttributeError该如何解决?

不需要降级Python版本,该报错由低版本requests库未适配Python 3.10的API变更导致。
Python 3.3版本起,MutableMapping等抽象基类就已从collections模块迁移到collections.abc子模块,Python 3.10正式移除了collections模块下的旧别名,你本地安装的requests版本过老,仍在调用已被移除的collections.MutableMapping属性,因此触发报错。

可行解决方法
  • 优先升级requests库(最推荐方案)
    直接执行升级命令即可适配Python 3.10:

    # 全局环境安装
    pip3 install --upgrade requests
    # 若提示权限不足,可执行
    sudo pip3 install --upgrade requests
    # 若使用虚拟环境,先激活虚拟环境后再执行升级命令
    pip install --upgrade requests
    

    升级完成后重新执行import requests即可验证是否修复。

  • 临时兼容方案(适用于项目无法升级requests版本的场景)
    在代码入口处、导入requests之前添加补丁代码,手动补全collections模块的别名:

    import collections
    from collections import abc
    collections.MutableMapping = abc.MutableMapping
    # 后续再导入requests就不会触发报错
    import requests
    

    注意该方案为临时兼容手段,长期使用还是建议升级requests到最新稳定版。

  • 使用虚拟环境隔离依赖
    如果你不想改动全局Python环境的依赖,可通过venv创建独立虚拟环境,在虚拟环境中安装适配的requests版本:

    # 创建虚拟环境
    python3.10 -m venv crawler_env
    # 激活虚拟环境
    source crawler_env/bin/activate
    # 安装最新版requests
    pip install requests
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 16:27:02