26
loading...
This website collects cookies to deliver better user experience
child process
in Node.JS to run a python script when needed.const spawn = require('child_process').spawn
app.get("process_data", (req, res) => {
spawn('python3', ['script.py'])
})
# script.py
doSometing()
const spawn = require('child_process').spawn
app.get("process_data", (req, res) => {
const msg = "Hello"
spawn('python3', ['script.py', msg])
})
import sys, json
def main():
msg = sys.argv[1]
doSometing(msg)
if __name__ == '__main__':
main()
const spawn = require('child_process').spawn,
const py = spawn('python3', ['script.py'])
const data = {
msg: "Hello"
}
py.stdin.write(JSON.stringify(data)) //we have to send data as a string, so we are using JSON.stringify
py.stdin.end()
import sys, json
def main():
lines = sys.stdin.readlines()
data = json.loads(lines)
doSometing(data['msg'])
if __name__ == '__main__':
main()
const spawn = require('child_process').spawn
const py = spawn('python3', ['cscript.py'])
py.stdout.on('data', function(res){
let data = JSON.parse(res.toString())
console.log(data)
})
import sys
# You will have your own implementation of get data. In this case lets assume it returns a dict/json
res = getData()
print(json.dumps(data))
sys.stdout.flush()