Node.js child_process.spawn无法启动python进程
我已经写了下面的代码来产生一个python进程。 我能够启动其他进程,但不是Python。 我试过重新安装Python和节点,但仍然没有运气。 我能够从命令行运行python。 请帮忙。
const spawn = require("child_process").spawn; var process = spawn('python',[ 'D:/python_script.py']); var responseData = ""; process.stdout.setEncoding('utf-8'); process.stdout.on('data', function (data){ responseData += data.toString(); }); process.stdout.on('end',function(data){ console.log(JSON.stringify(responseData)); });
使用节点64位v8.2.1
Python脚本,我正在使用:
if __name__ == '__main__': import sys print("Hello") f = open('D:/myfile.txt', 'w') f.write('hi there\n') # python will convert \n to os.linesep f.close() sys.stdout.flush()
即使只是产卵('python'); 没有启动python窗口
我也尝试给绝对path的python.exe。
更改
console.log(JSON.stringify(responseData));
至
console.log(responseData);
并添加
process.stderr.on('data', function (data){ responseData += data.toString(); });
下面
process.stdout.on('data', function (data){ responseData += data.toString(); });