私はapp.pyとindex.htmlファイルを作成しました。私の問題は、送信時にPOSTから収集した入力をPythonスクリプトで実行し、同じまたは異なるHTMLページにスクリプト出力を表示したいということです。私はCGIとFlaskを使用しました。私はどのように進めるべきかを完全には知らない。私はオンラインで研究していますが、何か非常に有用なものは見つかりませんでした。どんな助けもありがとう。Flaskでpythonスクリプトの結果を実行するには
ここに私のコードです。
from flask import Flask, render_template, request, redirect
app = Flask(__name__)
@app.route("/")
def main():
return render_template('index.html')
@app.route("/src_code/main.py", methods = ['POST'])
def run_app():
id = request.form['id']
name = request.form['name']
url = request.form['url']
if not id or not name or not url:
return render_template('index.html')
else:
#execute the python script.
if __name__ == "__main__":
app.run()
編集:私は私の機能をインポートするには、次のコードを使用している
。最後に、index.htmlの送信ボタンをクリックしたときにエラーが発生しましたが、
script_analyze = Analyzer()
result = script_analyze.main()
return render_template(results.html', data=result)
AttributeError: 'WSGIRequestHandler' object has no attribute 'environ'
この属性のエラーがなぜ発生するのかはわかりません。
私は何が問題なのか分かりません。すでに必要なものはすべて手元にあります。新しいテンプレートを使用してelseファイルに戻ります。 – polku
返品に新しいテンプレートを使用するにはどうすればよいですか?私にサンプルを見せてもらえますか? @polku – Pythoner1234
'return render_template( 'newtemplate.html'、data = script_output)'あなたが既にしたように、もう一度私はあなたの問題が何かを見ません。 – polku