【问题标题】:HTML Form Input to PythonPython 的 HTML 表单输入
【发布时间】:2017-11-27 23:45:36
【问题描述】:

所以在我的 HTML 代码中我有这个

 <form>  Curtain Opening Time: <br>  
    <input type ="text" name="Curtain_OPENTIME">
    <br> 
</form>

这将创建一个简单的文本框,其旁边的文本显示“窗帘打开时间:”(其中一些我不明白)。 这样做的目的是输入时间,例如上午 8:00,用户然后按 Enter 键“注册”/输入时间,然后我可以使用在 HTML 网页中输入的变量在我的 Raspberry Pi 3 中的 Python 代码中执行一些操作。请帮助,谢谢! :)

【问题讨论】:

  • 你可以使用flask库
  • 这个问题非常广泛,只是一些提示:您需要在您的 Raspberry Pi 上设置一个网络服务器。有很多选项,例如:raspberrypi.org/learning/python-web-server-with-flask
  • 是的,然后你可以用ngrok(localhost隧道)把它变成一个真正的网站

标签: python html input textbox html-input


【解决方案1】:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from flask import Flask, render_template, request
app = Flask(__name__)

@app.route('/')
def student():
    return render_template('yourfile.html')

@app.route('/result',methods = ['POST', 'GET'])
def result():
    if request.method == 'POST':
        result = request.form['Curtain_OPENTIME']
        print(result)
        return "thank you for filling out this form"

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

这是获取结果的python代码。在名为 yourfile.html 的同一文件夹中将它与您的 HTML 一起使用。然后运行它并转到它正在运行的本地主机。

【讨论】:

  • 非常感谢您的帮助,我在 Raspberry pi 上运行了服务器,为了简单起见,我没有提到它以尽量减少细节。我已将您的请求方法和结果代码放入非常感谢您,我得到它说“GET /?Curtain_OPENTIME=6 HTTP/1.1”200。它不会打印出变量;我输入的时间/号码。谢谢你的帮助
  • 哦,创建一个名为 templates 的文件夹并将 yourfile.html 放入其中
  • 是的,我已经完成了我有 python 文件,然后在模板文件中我有一个名为 index.html 的 .html 文件
  • 这就是我如何知道python中名为'result'的变量包含我在网页中输入的值。因为在 Raspberry Pi 中使用 print 和 return 往往不会输出变量的值。所以基本上,我该怎么做才能知道变量“结果”的值?谢谢
  • 嗯,你说的是“我的 Raspberry Pi 3 中的 Python 代码中的一些内容”
猜你喜欢
  • 2018-01-19
  • 1970-01-01
  • 1970-01-01
  • 2011-12-10
  • 1970-01-01
  • 2016-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多