Использование скрипта Python в NodeJS на GAE - PullRequest
0 голосов
/ 30 ноября 2018

Я использую скрипт Python в NodeJS, например:

const app = express();
const ps = require('python-shell');
var res_json;
var options = {
    mode: 'text',
    pythonPath: '/usr/bin/python',
    scriptPath: './peframe/peframe',
    args: ['--json' ,'/home/mypath/IP.exe']
};
ps.PythonShell.run('peframe.py', options, function (err, results) {
   if (err) throw err;
  console.log('finished');
  res_json=results.join('');
});

Но, если развернуть это приложение, он не может найти Python (но он работает локально). Ошибка:

Error: spawn /usr/bin/python ENOENT
    at Process.ChildProcess._handle.onexit (child_process.js:232)
    at onErrorNT (internal/child_process.js:407)
    at process._tickCallback (next_tick.js:63)
    at Function.Module.runMain (loader.js:744)
    at startup (internal/bootstrap/node.js:285)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:739) 

1 Ответ

0 голосов
/ 30 ноября 2018

Ошибка ENOENT означает, что путь /usr/bin/python не существует.Это потому, что вы используете среду выполнения NodeJS - у нее нет Python.

Если вам действительно нужно запустить NodeJS и Python в одном приложении, вы можете развернуть их как отдельные сервисы в одном и том жеприложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...