我想执行一个作为网络请求获得的 python 脚本,执行脚本并将输出作为响应发送。
到目前为止,我已经将 python 脚本写入一个 .py 文件并使用 ProcessBuilder 执行它。
问题是,一旦脚本被执行,将脚本存储在服务器中就没有用了。所以我在执行完成后删除文件。
现在我觉得这是一种糟糕的做法,希望尽量减少写入和删除操作。
我尝试使用 jpserve但它没有按预期工作。 (当 selenium 测试用例作为 jpserve 的输入时,它不会处理脚本,但仍会发送成功消息。)另外,我对使用 jython 不感兴趣。
有没有办法运行 python 脚本而不将其存储在 .py 文件中?
最佳答案
您也可以像这样运行脚本:
String script = "your script from server";
ProcessBuilder pb = new ProcessBuilder("python3", "-c", script);
pb.start();
在 shell 中,python -c 允许您运行在 shell 中编写的脚本。
关于java - 如何在不将脚本存储在 .py 文件中的情况下从 java 运行 python 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56849773/