我想执行一个作为Web请求获得的python脚本,执行该脚本并将输出作为响应发送。
到目前为止,我已经将python脚本写入.py文件,并使用ProcessBuilder执行了该脚本。
问题是,一旦执行了脚本,就无法在服务器中存储脚本。因此,执行完成后,我将删除文件。
现在,我认为这是一种不好的方法,并且希望尽量减少写和删除操作。
我尝试使用jpserve,但无法正常工作。 (将硒测试用例作为jpserve的输入时,它不处理脚本,但仍发送成功消息。)另外,我对使用jython也不感兴趣。
有没有一种方法可以运行python脚本而不将其存储在.py文件中?
答案 0 :(得分:2)
您也可以像这样运行脚本:
String script = "your script from server";
ProcessBuilder pb = new ProcessBuilder("python3", "-c", script);
pb.start();
在shell中,python -c允许您运行在shell中编写的脚本。
答案 1 :(得分:0)
Jython:适用于Java平台的Python-http://www.jython.org/index.html
还,这不是很不安全吗?