I was trying to call a python code from my node file.
Here is my node.js Code:
var util = require("util");
var spawn = require("child_process").spawn;
var process = spawn('python',["workpad.py"]);
util.log('readingin')
process.stdout.on('data',function(data){
util.log(data);
});
and my python part:
import sys
data = "test"
print(data)
sys.stdout.flush()
In the cmd window, only util.log('readingin')
is shown. What's the problem of my code?
There is no problem ...
Here is a slight tweak of your working code (I convert the buffer to string so its human readable)
// spawn_python.js
var util = require("util");
var spawn = require("child_process").spawn;
var process = spawn('python',["python_launched_from_nodejs.py"]);
util.log('readingin')
process.stdout.on('data',function(chunk){
var textChunk = chunk.toString('utf8');// buffer to string
util.log(textChunk);
});
and here is your python
# python_launched_from_nodejs.py
import sys
data = "this began life in python"
print(data)
sys.stdout.flush()
finally here is output of a run
node spawn_python.js
11 Dec 00:06:17 - readingin
11 Dec 00:06:17 - this began life in python
node --version
v5.2.0
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With