提问者:小点点

通过NodeJs在Python脚本中使用Pymongo


我正在从我的NodeJs服务器代码“生成”一个python脚本,使用

var spawn = require('child_process').spawn;
var python_process = spawn('python', ['server/matcher/matcher.py'])

我的python代码应该处理从MongoDB集合中获取的一些数据,因此我需要访问我的数据库。我已经安装了pymongo和dnspython,我确信这一点,因为每当我为其中任何一个运行installation命令时,我都会得到一个

已满足要求:dnspython in/library/frameworks/python.framework/versions/3.9/lib/python3.9/site-packages(1.16.0)

但是,每当我尝试运行代码时,我都会收到错误

Pymongo.errors.ConfigurationError:必须安装“DNSpython”模块才能使用MongoDB+SRV://URI

我像平常一样访问数据库,并按照文档中的指示进行访问

from pymongo import MongoClient
client = MongoClient(<connection string>)
    db = client.<db name>
    users = db.users.find({})

我意识到这是一个环境问题,因为当我在PyCharm中运行Mongo时,相同的代码正确运行并成功连接到Mongo,但我不确定如何使它在NodeJs子进程中工作。


共1个答案

匿名用户

尝试:

` sudo pip install --upgrade pip` or `python -m pip install --upgrade pip`

在您的命令行上。

然后重试安装dnspython