python - 导入错误 : no module named bson

标签 python pymongo bson

我正在尝试在我的环境文件中导入 json_util:

from bson import json_util

我收到此导入错误:没有名为 bson 的模块

我尝试通过 pip 安装和卸载 pymongo 和 bson - 但似乎无济于事。我发现 bson 包包含在 pymongo 中,所以我明确安装了它,然后我收到了 EPOCH_AWARE 导入错误。

目前只安装了pymongo。当我使用此行强制虚拟环境时,它会起作用:

#subprocess.Popen(['/home/.virtualenvs/simple_worker/bin/python', fileName])

但是当我尝试像这样通过操作系统运行它时:

os.system('PYTHON_ENV=%s python %s' % (env, fileName))

我在 bson 上遇到这个导入错误。

编辑:这是 pip 列表输出

(simple_worker) ➜ worker  pip list                                                                                         ✭ ✱
apache-libcloud (0.17.0)
backports.ssl-match-hostname (3.4.0.2)
gnureadline (6.3.3)
google-api-python-client (1.3.1)
httplib2 (0.9.2)
ipdb (0.8)
ipython (2.3.1)
mock (1.0.1)
oauth2client (1.5.1)
pbr (0.10.7)
pika (0.9.14)
pip (8.0.2)
psutil (2.2.0)
py (1.4.26)
pyaml (15.2.1)
pyasn1 (0.1.7)
pyasn1-modules (0.0.5)
pymongo (3.2.1)
pytest (2.6.4)
pytest-mock (0.4.0)
pytz (2015.4)
PyYAML (3.11)
redis (2.10.3)
requests (2.8.0)
rsa (3.1.4)
setuptools (11.0)
simplejson (3.6.5)
six (1.9.0)
stevedore (1.2.0)
uritemplate (0.6)
urllib3 (1.10)
virtualenv (12.0.7)
virtualenv-clone (0.2.5)
virtualenvwrapper (4.3.2)

有什么想法吗?

最佳答案

如果您没有得到no module named bson错误但是EPOCH_AWARE导入错误,这是由于 bson 和 pymongo 之间的名称冲突。在这种情况下,您应该按顺序执行这些操作:

sudo pip uninstall bson
sudo pip uninstall pymongo
sudo pip install pymongo

不需要再安装bson

关于python - 导入错误 : no module named bson,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35254975/

相关文章:

python - 我可以检测到有问题的图像有哪些特征?

python - 使用 pymongo 在 mongodb 上插入 $currentDate

mongodb - 如何在不超过最大文档大小的情况下编写聚合?

python - 如何释放 mongodb 连接?

c# - 将所有小数的默认 MongoDb/Bson 表示设置为 double

python - 在 python 中使用 for 循环将 skimage.filters.threshold_otsu() 应用于图像/数组中的段列表时遇到问题

python - 如何在 Python/Flask 中使用 stripe webhook 识别客户

python - 增加辅助 y 轴和 x 轴之间的间距?

json - 使用 MongoDB Driver Java API 将 BSON 转换为 JSON

node.js - 尽管更改了文件 Bson,但 npm install 出错