0

NodeJsサーバーコードからPythonスクリプトを「生成」しています

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

私の Python コードは、MongoDB コレクションから取得したデータを処理することになっているため、データベースにアクセスする必要があります。私はすでにpymongodnspythonをインストールしていますが、どちらかのインストール コマンドを実行するたびに、

要件はすでに満たされています: /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (1.16.0) の dnspython

ただし、コードを実行しようとするたびにエラーが発生します

pymongo.errors.ConfigurationError: mongodb+srv:// URI を使用するには、「dnspython」モジュールをインストールする必要があります

通常どおり、ドキュメントの指示に従ってデータベースにアクセスします

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

PyCharmで実行したときに同じコードが正しく実行され、Mongoに正常に接続されたため、これは環境の問題であることがわかりましたが、NodeJs子プロセスで動作させる方法がわかりません。

4

2 に答える 2