I am making this web app about bookstore which recommends books based on book user selects. I want it to run a python script and for that, I have used child process looking at this thread How to call a Python function from Node.js
Here's the code:
const spawn = require("child_process").spawn;
const pythonProcess = spawn('python',["../../../python/book_recommendation.py","Timeline"]);
const Recommendations = pythonProcess.stdout.on('data', (data) => {
console.log(data);
});
module.exports = Recommendations;
I want this code to run when I click on the product and get directed to productScreen page. But I get the error "TypeError: Spawn is not a function". With some google searching, I found out that I m calling this function through react and not node.js. I m using react as frontend and node.js as backend. How can I solve this problem?
Here's how I imported this in react ProductScreen.js page
import { Recommendations } from "../machine-learning/recommendation_engine"
Here's the file structure of my project
Update:
const spawn = require("child_process").spawn;
const pythonProcess = spawn('python',["../python/book_recommendation.py","Timeline"]);
app.get("/product/:id", (req, res) => {
pythonProcess.stdout.on('data', (data) => {
console.log(data);
});
});
I moved the above code in server.js backend folder now. How do I call it?