我创建了一个python脚本来解析一个网站(IMDB)并将其组织成一个数据框。 我也有一个node.js应用程序,它允许我在python脚本中找到一个变量(基于电影名称的电影ID,代码为pyvar)。那么如何将运行JavaScript应用程序后得到的这个变量包含到python脚本中,运行脚本并将结果发送回node.js应用程序? (这将是数据帧转换为可以说JSON)Node.js应用程序与python脚本
的Node.js应用
var express = require("express")
var app = express()
var request = require("request")
app.set("view engine", "ejs")
app.get("/", function(req, res){
res.render("search")
})
app.get("/results", function(req, res){
var query = req.query.search
var url = "http://www.omdbapi.com/?s=" + query + "&apikey=thewdb"
request(url, function(error, response, body){
if(!error && response.statusCode == 200){
var data = JSON.parse(body)
res.render("results", {data: data})
var pyvar = data["Search"][0]["imdbID"]
}
})
})
app.listen(process.env.PORT, process.env.IP, function(){
console.log("Movie App has started!!!");
})
果壳中的python脚本是这样的:
url = 'website.org/' + pyvar + '/blah'
parse(url)
return dataframe
后我会以某种形式将数据帧发送回node.js应用程序并显示结果,如果允许我下载t他将数据帧转换为xlsx,但它可能太复杂。
脚本通常采取在输入参数的形式或从stdin读取。脚本应输出到标准输出。如果您更新脚本以这种方式工作,则可以使用https://nodejs.org/api/child_process.html。 –