使用 Flask 执行 python 脚本 [重复]

Posted

技术标签:

【中文标题】使用 Flask 执行 python 脚本 [重复]【英文标题】:Executing a python script using Flask [duplicate] 【发布时间】:2019-04-23 16:45:56 【问题描述】:

我试图通过 Flask 执行 Python 脚本。

我在下面写了python代码来执行另一个python脚本。

from flask import Flask
import subprocess

app = Flask(__name__)

@app.route("/")
def home():
    subprocess.call("/home/tech/Downloads/labelme-master/labelme/main.py 1", shell=True)
    #return "Hello, World!"

if __name__ == "__main__":
    app.run(debug=True)

但不幸的是,当我在 python 代码上运行并检查 127.0.0.1:5000 它在浏览器中给出了这个错误:

TypeError: The view function did not return a valid response. The function either returned None or ended without a return statement.

有什么办法吗?

我的最终目标是通过 html 页面的 Button 打开一个 Python 脚本。

【问题讨论】:

【参考方案1】:

作为响应,您必须从函数返回。所以你可以这样做

from flask import Flask
import subprocess

app = Flask(__name__)

@app.route("/")
def home():
    subprocess.call("python /home/tech/Downloads/labelme-master/labelme/main.py 1", shell=True)
    return "ok"
if __name__ == "__main__":
    app.run(debug=True)

【讨论】:

知道如何使用 html 按钮在 python 脚本之上运行吗? 您可以从 javascript 进行 ajax 调用

以上是关于使用 Flask 执行 python 脚本 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

将参数从Javascript传递到flask python脚本[重复]

通过python脚本将图像上传到python flask API [重复]

TypeError Ajax Post - Flask Python [重复]

python flask框架 app.debug=True时,启动脚本被执行了2次

python flask框架 app.debug=True时,启动脚本被执行了2次

使用我网站上的按钮运行 python 脚本 [重复]