まずはこのページを参照。
https://aiacademy.jp/media/?p=57
from flask import Flask
app = Flask(__name__, static_folder='.', static_url_path='')
@app.route('/')
def index():
return app.send_static_file('index.html')
app.run(port=8000, debug=True)
こいつを実行すると同じフォルダにある index.html が実行される。
localhost:8000 にアクセスが必要
これだけだとまだ難しいので下記サイトを見ると、少し理解できた。
https://news.mynavi.jp/article/zeropython-64/
# 必要なモジュールの取り込み
from flask import Flask
# Flaskオブジェクトの生成 --- (*1)
app = Flask(__name__)
# ルート( / )へアクセスがあった時の処理を記述 --- (*2)
@app.route("/")
def root():
return "Hello"
# サーバーを起動 --- (*3)
if __name__ == "__main__":
app.run(debug=True, port=8888)
「http://localhost:8888」にこいつは開かないとならない。
こんな使い方もあるのですね。
ここからはマイナビのサイトを参考に理解を進める。
from flask import *
# Flaskオブジェクトの生成
app = Flask(__name__)
# ルート( / )へアクセスがあった時 --- (*1)
@app.route("/")
def root():
# HTMLでWebフォームを記述 --- (*2)
return """
<html><body>
<form action="/calc" method="post">
<input type="text" name="a"> ×
<input type="text" name="b">
<input type="submit" value="計算">
</form>
"""
# フォームの値を受け取って結果を表示 --- (*3)
@app.route("/calc", methods=["post"])
def calc():
a = int(request.form.get("a"))
b = int(request.form.get("b"))
r = a * b
return "<h1>答えは..." + str(r) + "</h1>"
# サーバーを起動
if __name__ == "__main__":
app.run(debug=True, port=8888)
掛け算プログラムです。
こんな感じでpostを利用してpythonで計算して返す。
同じWebページで返すにはどうすりゃいいんだ?
0 件のコメント:
コメントを投稿