Flask
pythonでwebアプリをつくるためにFlaskを調査しました。
公式docs
仮想環境の構築
最初に作成したいフォルダに仮想環境を構築します。
$ python -m venv venv
起動方法
$ venv\Scripts\activat
終了方法
$ deactivate
Flaskのインストール
$ pip install Flask
その他のライブラリインストール
エラーが発生したので追加しました。
$ pip install arrow
$ pip install ipython
$ pip install ipywidgets
$ pip install psutil
$ pip install pyarrow
Hello World アプリケーション
ファイル名はhello.py。flask.pyはエラーになるので使用禁止。
hello.py
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello_world():
return "<p>Hello, World!</p>"
やっていること
- 最初にFlaskクラスをimport。このクラスのインスタンスはWSGI(Web Server Gateway Interface)アプリケーションです。
- 次に、Flaskクラスのインスタンスを作成します。最初の引数はアプリケーションのモジュールまたはパッケージの名前で、__name__がショートカットとして機能します。これはテンプレート、静的ファイルなどのリソースを探す場所をFlaskが知るために必要になります。
- それからroute()デコレータを使って、どのURLが関数のトリガーかをFlaskに伝えます。
- その関数はユーザのブラウザで表示したいメッセージを返します。標準のコンテント・タイプはHTMLです。
Flaskの起動
公式docsにはflaskコマンドが記載してありますが、環境変数の設定が不明だったのでpythonコマンドで起動。hello.pyを起動します。
$ python -m flask --app hello run
デバッグモードだと、サーバー起動しながら編集できます。
ブラウザの更新ボタンで反映されます。
$ python -m flask --app hello --debug run
ブラウザ表示
http://127.0.0.1:5000/
でブラウザ表示されます。
サーバー停止はcrtl+c
です。