如何在Node.js中杀死Python-Shell模块进程?

时间:2017-08-18 14:07:06

标签: javascript python node.js

我目前在基于Node的Web界面中使用python-shell模块。我遇到的问题主要是语法问题。下面的代码显示了python脚本的生成。

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

这只是来自here的示例脚本。我如何将其与节点

联系起来
var procc = require('child_process'.spawn('mongod');
procc.kill('SIGINT');

文档指出PythonShell实例具有以下属性:

childProcess:通过child_process.spawn创建的流程实例

但我该如何实际使用它?对于这个特定的模块

,似乎缺乏一些例子

1 个答案:

答案 0 :(得分:4)

例如 -

var python_process;

router.get('/start_python', function(req, res) {
    var PythonShell = require('python-shell');
    var pyshell = new PythonShell('general.py');

    pyshell.end(function (err) {
        if (err) {
            console.log(err);
        }
    });
    python_process = pyshell.childProcess;

    res.send('Started.');
});

router.get('/stop_python', function(req, res) {
   python_process.kill('SIGINT');
   res.send('Stopped');
});