Мне сложно понять, как запустить NodeJS из Python. У меня нет проблем с запуском ShellScript из Python и NodeJS из ShellScript, но я не могу получить NodeJS из Python, я просто получаю следующий результат:
b"
Это упрощенная версия моих скриптов.
NodeJS Я пытаюсь запустить изнутри Python.
#!/usr/bin/env node
console.log("Hello " + process.argv[2]);
А вот Python, используя Python3.
from datetime import datetime
import json
import os
import re
import sys
import subprocess
if __name__ == '__main__':
p = subprocess.Popen(['/Users/Brett/scripts/hello.js', 'Brett'], stdout=subprocess.PIPE)
out = p.stdout.read()
print(out)
Спасибо за помощь! Я очень признателен.
РЕДАКТИРОВАТЬ: У меня нет проблем с выполнением следующего из командной строки, поскольку 'hello. js' является исполняемым:
hello.js 'Brett'
shell=true
не исправляет.
Кроме того, я использую macOS Catalina 10.15.5, поэтому моя оболочка - zsh.
Если я добавлю node
в начало команды, я не получу такого файла или каталог для node
, я пробовал так: p = subprocess.Popen(['/Users/Brett/scripts/hello.js', 'Brett'], stdout=subprocess.PIPE)