我需要能够从Flask服务器上的HTML文件中运行Python脚本。在我的HTML页面上,有3个输入框和一个ok
按钮。按下ok
按钮时,应将输入框中的数字传递给命令以运行python脚本。需要运行的命令示例为python magicHome-rgb.py <inputBox1> <inputBox2> <inputBox3>
,但将<inputBox[no]>
替换为输入框的输入。
如果这没有意义,请随时询问更多...
有人知道这是否可能吗?
答案 0 :(得分:0)
不,即使可以,也不要。相反,如果您使用表单来收集数据,请通过POST请求将该数据发送到Flask服务器,并由一个函数来处理它。不要使用单独的脚本。
示例python函数:
@app.route('/your-url', methods=('GET', 'POST'))
def get_input():
if request.method == 'POST':
box1 = request.form['inputbox1']
box2 = request.form['inputbox2']
box3 = request.form['inputbox3']
# -- do stuff --
return render_template('your_template.html')
可能使用的表单的HTML示例:
<form method="post">
<input type=number name="inputbox1" id="inputbox1" required/>
<input type=number name="inputbox2" id="inputbox2" required/>
<input type=number name="inputbox3" id="inputbox3" required/>
<input type="submit" value="Ok">
</form>
在上述情况下,box1
,box2
和box3
存储您可能需要的3个输入框的输出。
或者,要运行HTML文件中的代码,您也可以使用HTML文件中嵌入的javascript处理输入。