我应该如何使用 child_process 模块在 linux 中通信 python 和 node.js?

nysun1103

我正在尝试从 node.js 调用 python 文件。这是流程/结构:当 node.js 接收到特定值(通过套接字从前端)时——运行 python 文件(不一定接收特定输入)——python 文件将在同一目录中创建和保存 .png 文件。

我在 npm 模块中尝试了 python-shell,但它不断给出错误,似乎它希望我将所有导入的包移动/复制到 .js 文件所在的位置......

所以我正在寻找替代方案,并找到了child_process模块。下面的问题是我不确定在下面的代码中应该var pythonExecutable放什么,因为我的电脑是 linux,而不是 windows。

我将不胜感激对上述所有方法的任何评论。

我指的是来自https://ourcodeworld.com/articles/read/286/how-to-execute-a-python-script-and-retrieve-output-data-and-errors-in-node- js

// The path to your python script
var myPythonScript = "script.py";
// Provide the path of the python executable, if python is available as environment variable then you can use only "python"
var pythonExecutable = "python.exe";

// Function to convert an Uint8Array to a string
var uint8arrayToString = function(data){
    return String.fromCharCode.apply(null, data);
};

const spawn = require('child_process').spawn;
const scriptExecution = spawn(pythonExecutable, [myPythonScript]);

// Handle normal output
scriptExecution.stdout.on('data', (data) => {
    console.log(uint8arrayToString(data));
});

// Handle error output
scriptExecution.stderr.on('data', (data) => {
    // As said before, convert the Uint8Array to a readable string.
    console.log(uint8arrayToString(data));
});

scriptExecution.on('exit', (code) => {
    console.log("Process quit with code : " + code);
});
约翰·迈克尔·维勒加斯
var pythonExecutable = "python"; 

会做。如果您使用python.exe告诉进程运行 windows .exe 命令。只是“python”会做它会抛出一个错误“python命令未找到”或类似的如果没有安装python

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Node.js child_process exec的标准输出被缩短

来自分类Dev

node.js模块和函数中“ this”的含义

来自分类Dev

在node.js安全/转义中生成child_process

来自分类Dev

如何模拟Node.js child_process生成函数?

来自分类Dev

Node JS HBS模块和引擎

来自分类Dev

Node.js插件与child_process的优点

来自分类Dev

Node.js模块文件和Concat

来自分类Dev

结合使用node.js模块和atom-shell

来自分类Dev

Webpack和TypeScript:无法解析node.d.ts中的模块“ child_process”

来自分类Dev

如何使用C ++插件中内置模块的node.js

来自分类Dev

使用node.js child_process调用python脚本

来自分类Dev

如何刷新Node.js child_process stdin.write

来自分类Dev

如何获取Node.JS中生成的child_process的输出?

来自分类Dev

如何在node.js child_process exec命令中使用“&”?

来自分类Dev

child_process spawnSync使用for循环迭代python stdout结果

来自分类Dev

如何构建docker以从Google App Engine中的Node.js child_process运行Python3?

来自分类Dev

无法从node.js中的child_process访问数组

来自分类Dev

在节点child_process中检测python异常

来自分类Dev

Node.js child_process exec的标准输出被缩短

来自分类Dev

Node.js中的模块

来自分类Dev

功能步骤中的黄瓜JS child_process

来自分类Dev

在node.js安全/转义中生成child_process

来自分类Dev

使用node-nan在node.js模块中的SetWindowsHookEx

来自分类Dev

使用node.js child_process调用python脚本

来自分类Dev

反应本机中的未知模块“ child_process”

来自分类Dev

使用child_process(node js)在后台运行python脚本

来自分类Dev

等待child_process退出node.js的替代方法

来自分类Dev

node.js child_process 生成忽略等号

来自分类Dev

Node js Google App Engine 中的 child_process

Related 相关文章

热门标签

归档