2016-10-12 20 views
1

ノードjsでpythonスクリプトを呼び出し、ノードjsで呼び出しを取得できますか?

python.py 
 

 
from pymongo import MongoClient 
 
from flask import Flask 
 

 
app = Flask(__name__) 
 

 
host = "10.0.0.10" 
 
port = 8085 
 

 
@app.route('/name/<string:name>',methods=['GET','POST']) 
 
def GetNoteText(name): 
 
    
 
    print name 
 
    
 
    return "Data Received" 
 

 
@app.route('/', methods=['POST']) 
 
def abc(): 
 
    print "Hii" 
 
    return ('Welcome') 
 

 
users=[] 
 
@app.route('/getNames') 
 
def getName(): 
 
    client = MongoClient('mongodb://localhost:27017/') 
 
    db = client.bridgeUserInformationTable 
 
    cursor = db.bridgeUsersInfo.find() 
 
    for document in cursor: 
 
     #print "Name : ",document['name'] 
 
     users.append(document['name']) 
 
     print document['name'] 
 
    #print (users) 
 
    return "<html><body><h1>"+str(users)+"</h1></body></html>" 
 
    
 
if __name__ == '__main__': 
 
    app.run(
 
     host=host, port=port 
 
     )

node.j 
 

 
var PythonShell = require('python-shell'); 
 
    
 
PythonShell.run('pass.py', function (err) { 
 
    if (err) throw err; 
 
    console.log('finished'); 
 
});

私たちはAndroidデバイスからの入力を取得してから、ノードjsのスクリプトを実行した後、ノードJSでPythonスクリプトを呼び出すことができますしようとしたとして?私はそれがどのように解決すべきか混乱しています。そして、どのように両方の言語がpythonのようにノードjsにお互いに通信する必要がありますか?

答えて

0

ZERORPCは、ZeroMQの上に構築された本当に気の利いたライブラリです。これはおそらくNodeからPythonコードを呼び出す最も簡単な方法です。

非常に簡単なアプローチと非ロバストなアプローチのために、tmpファイルを使用してNodeからPythonコマンドを書くことができます。 Python内でイベントループが実行されている場合は、tmpファイルを読み込んで変更を確認し、そこでコマンドを実行します。

+0

私は以前に使ったことがありましたが、それは –

+0

となりました。私はちょうどアンドロイドから挿入された値を選びたいと思っています。 –

+0

その場合は、一時ファイルに書き込んで、または、ソケットライブラリで作業し、その値をPythonに渡します。 – saq7

関連する問題