如何最轻松地从网页输入数据并将其传递给Python脚本?
我一直在这里和其他论坛上阅读很多关于Python与php或cgi,甚至Tornado,Django等有关的内容,但我很困惑,对我来说什么是最好的解决方案。
我有一个Python脚本,可以从网上抓取数据,生成.html页面等 - 在运行时只有一个
userIn=str(raw_input())
使脚本根据终端中的输入收集数据。我现在只希望这个输入来自某种
<html>
<body>
<form action="test.php" method="get">
Name <input type="text" name="name" />
<input type="submit" />
</form>
</body>
</html>
在test.php文件中我试过传递任何类型的值(proc_open,exec ...)但我似乎没有得到python和这个表单之间的连接,最重要的是我不知道是什么将python的输出(一些调试错误等)传递回web界面的最佳方法是什么?!
非常感谢!
答案 0 :(得分:2)
我现在使用exec()命令管理它。
<html>
<body>
<form action="test.php" method="get">
<input type="text" name="name" />
<input type="submit" />
</form>
</body>
</html>
test.php的:
<?php
exec("python mypythonscript.py ".$name, $output);
?>
答案 1 :(得分:0)
使用php passthru()函数。
答案 2 :(得分:0)
要从表单中获取值,您可以将action="test.php"
更改为action="/where_you_hooked_your_webapp"
。
应用程序的代码可以是:
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route('/')
def handle_input():
userIn = request.args.get('name', 'default name goes here')
# grab data from the web, prepare data for html template, etc
return render_template('user.html', user=userIn, data=data)
要了解如何部署它,请参阅Flask Quickstart,例如Apache with mod_wsgi。