如何从NodeJS调用无尽的python脚本

时间:2017-05-09 14:23:54

标签: python node.js shell

我有一个python脚本:

//test.py

import psutil

while True:
    result = psutil.cpu_percent(interval=1)
    print(result)

然后是nodejs代码:

//test.js
    var PythonShell = require('python-shell')
    pyshell = new PythonShell('test.py')
    pyshell.on('message', function(message) {
        console.log(message)
    })

执行节点脚本时没有任何反应。请帮助我如何从Node中的无尽python代码中获取每秒数据(例如"实时")并将其登录到控制台。

1 个答案:

答案 0 :(得分:1)

您需要刷新STDOUT:

#test.py

import psutil
import sys

while True:
    result = psutil.cpu_percent(interval=1)
    print(result)
    sys.stdout.flush()

看起来它是python-shell npm包的常见问题 - https://github.com/extrabacon/python-shell/issues/81