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

Python使用pip安装bson库报错求助:ImportError问题排查

解决pip install bson时的ImportError问题

嘿,我之前也踩过这个坑!你遇到的错误是因为PyPI上那个名为bson的包已经彻底过时且无人维护了,它的安装脚本依赖的pip内部API早就被移除了,所以新版pip根本跑不了它的安装流程。

正确的解决办法:安装pymongo而不是单独的bson

MongoDB官方已经把bson模块整合到pymongo库里了,你完全不需要单独安装bson包,直接执行下面的命令就行:

pip install pymongo

安装完成后,你可以直接在Python里导入bson使用,和单独装bson的用法完全一样:

import bson
# 比如使用bson的ObjectId
from bson.objectid import ObjectId

为什么旧的bson包会报错?

那个版本为0.5.2的旧bson包,它的setup.py里写了:

from pip import get_installed_distributions

但这个get_installed_distributions函数在pip 10.0版本之后就被移到了pip的内部模块(pip._internal.utils.misc),而且官方明确禁止外部代码调用这些内部API。所以当你用新版pip安装这个旧包时,就会触发ImportError。

额外步骤(如果已经装了旧包)

如果你之前尝试安装过那个旧的bson包,可以先卸载它:

pip uninstall bson -y

然后再安装pymongo就没问题了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 04:06:13