如何通过python获取用户为HTML页面输入的文本?
例如
<html>
<input id="post_form_id" name="fooput" value="" />
</html>
现在,用户在文本字段中输入值 abcxyz。我如何使用 python 获取该值?我已经知道它是如何通过 javascript 完成的,但我想使用 python 来完成。
另外,我已经尝试过Beautiful Soup,但它只能返回字段的预设值。 所以我可以做
soup=BeautifulSoup(open("myhtmldoc.htm"))
print soup.find('input')['value']
但这只会给我预设值,而不是用户给出的值。
最佳答案
您需要编写一个在提交表单时调用的脚本。通常,您使用一些框架来处理各种细节。
像Flask
这样的轻量级框架使这项任务变得简单:
from flask import Flask, render_template
app = Flask(__name__)
app.route('/',methods=['GET','POST'])
def print_form():
if request.method == 'POST':
return render_template('form.html',result=request.form['fooput'])
if request.method == 'GET':
return render_template('form.html')
if __name__ == '__main__':
app.run()
在您的form.html
中:
{% if result %}
You entered: {{ result }}
{% endif %}
<form method="POST" action=".">
<input id="post_form_id" name="fooput" value="" />
<input type="submit">
</form>
关于python - 如何通过python获取用户为HTML页面输入的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11009051/