Flask

Pythonフレームワーク「Flask」を利用したWebアプリケーションを作成してみた

Flaskは、Pythonで開発する際のWebフレームワークの1つで、マイクロフレームワーク(軽量で必要最低限の機能が搭載されているフレームワーク)に分類されている。

今回は、Flaskのインストールを行い、Flaskを用いたWeb画面を作成してみたので、その手順を共有する。

なお、Flaskについての詳細は、以下のサイトを参照のこと。
https://www.alobridge.com/blog/1669/

前提条件

以下のPyCharmのインストールが完了していること。

PythonのGUI開発を行うためのPyCharmをインストールしてみたPythonの開発を便利に行える統合開発環境(IDE)として、「PyCharm」というツールがあることが分かったので、今回、そのインスト...

また、以下の記事のPythonのインストールが完了していること。

Pythonフレームワーク「Django」を利用したWebアプリケーションを作成してみたDjango(ジャンゴ)とは、Pythonで開発する際のWebフレームワークの1つで、無料のオープンソースとして公開されていて、高品質な...

Flaskのインストール

2024年6月17日現在の最新バージョン(3.0.3)のFlaskをインストールする。その手順は、以下の通り。

1) コマンドプロンプトで「python –version」コマンドを実行すると、以下のように、Pythonのバージョンが確認できる。
Flaskのインストール_1

2)「pip install flask」コマンドを実行し、最新バージョンのflaskをインストールする。
Flaskのインストール_2

3)「flask –version」コマンドを実行すると、以下のように、インストールしたFlaskのバージョンが確認できる。
Flaskのインストール_3



「Envader」はLinuxコマンドやDatabase SQL等のスキルを、環境構築不要で習得できる学習サイトだった「Envader」は、ITエンジニアとしてよく使うLinuxコマンドやDatabase SQL等のスキルを、解説を読んだ上で、問題を解き...

サンプルプログラムの作成

作成したサンプルプログラムの構成は、以下の通り。
サンプルプログラムの構成_1

サンプルプログラムの構成_2 サンプルプログラムの構成_3 サンプルプログラムの構成_4

それぞれのサンプルプログラムの内容は、以下の通り。

from demo import app

if __name__ == '__main__':
    # Flaskオブジェクト(demoフォルダ内のapp)を実行する
    app.run(debug=True)
from flask import Flask

# Flaskオブジェクトを作成する
app = Flask(__name__)

# demoフォルダ内のviews.pyを実行する
import demo.views
from demo import app
from flask import render_template

# http://(サーバーのIPアドレス):(ポート番号)/ にアクセスしたタイミングで、
# index.htmlを表示する
# (サーバーのIPアドレス)は127.0.0.1、(ポート番号)は5000となる
@app.route("/")
def index():
    return render_template("index.html")
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <title>index</title>
</head>
<body>
    Hello Python Flask!!
</body>
</html>

サンプルプログラムの実行結果

サンプルプログラムの実行結果は、以下の通り。

1) コマンドプロンプトでserver.pyが入っているフォルダに移動し、server.pyを実行する。
サンプルプログラムの実行結果_1

2) Webブラウザで「http://127.0.0.1:5000/」とアクセスすると、以下のように、index.htmlの画面が表示される。
サンプルプログラムの実行結果_2

3) server.pyを終了するには、コマンドプロンプト上でCtrl+Cを押下する。
サンプルプログラムの実行結果_3

要点まとめ

  • Flaskは、Pythonで開発する際のWebフレームワークの1つで、マイクロフレームワーク(軽量で必要最低限の機能が搭載されているフレームワーク)に分類されている。