トップ OSS紹介 Flask

Flask

NRIのOpenStandiaが提供するFlask最新情報

バージョンアップ情報

Flask情報

Flaskとは

Flaskとは、Python言語用の軽量(micro)ウェブフレームワークです。microが意味するところは「ユーザが作成するウェブアプリケーションが1つのファイルで構成されているくらい小さい」や、「Flaskの提供している機能がウェブフレームワークとして少ない」といったことではありません。microが意味するところは、Flaskのコアがシンプルで軽量な作りとなっているということです。コアはシンプルですが各種モジュールを使って拡張可能な作りになっているため、最初はシンプルなアプリケーションとして作り始め、アプリケーションを拡張するに連れ必要な機能を提供するモジュールをFlaskに追加して大きなアプリケーションに作り上げていくといったことが可能です。

どれだけ簡単にWebアプリケーションが作成できるか見てみましょう。ここでは、Hello, World!と表示するだけのWebアプリケーションを作成します。まずは、以下のコマンドでFlaskをインストールします。

pip install flask

そして、以下のコードを書いたpythonファイル(app.py とします)を作成して、

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
return 'Hello, World!'

app.run()

以下のコマンドを実行します。

python app.py

これだけでWebアプリケーションが起動します。http://localhost:5000/ にアクセスすれば、Hello, World!と表示された画面が返ります。

主な特徴

Flaskは、主にWerkzeugとJinjaの2つのライブラリをラッピングして作られています。前者はWebサーバを内包したWSGI(PythonのWebインターフェイス標準規格)に準じたライブラリで、後者はテンプレートエンジンです。多くのWebフレームワークにある、データベースを必須とするアプローチは取っていません。この様に、Flaskのコア部分は2つのライブラリを元に作られているためとてもシンプルです。同じPythonのWebフレームワークであるDjangoはフルスタックなWebフレームワークと位置づけられており、対局に位置するためこの2つはよく比較対象に挙げられます。

動作環境

Flaskを動作させるためには、以下が必要です。

  • Python 3.8~(最新のバージョンの使用を推奨)
  • Python開発ライブラリ

パッケージマネージャーでFlaskをインストール際に下記のモジュールが自動的にインストールされます。

  • Werkzeug
  • Jinja
  • MarkupSafe
  • ItsDangerous
  • Click
  • Blinker

Flaskのライセンス

Flaskは、三条項BSDライセンス(BSD-3-Claus)と共に配布されています。三条項BSDライセンスは、「無保証であること」、「著作権、ライセンス条項」の明記を条件としています。条件を満たせば、ユーザーはそのソフトウェアの使用や頒布、修正、派生版の頒布(修正したソースコードを公開すること無く、オブジェクトコードの頒布が可能)をすることに制限を受けません。

オープンソース年間サポートサービス

OpenStandiaではOSSを安心してご利用いただけるように、オープンソース年間サポートサービスをご提供しております。
サポートしているOSSは下記ページをご参照ください。

お気軽にお問い合わせください

関連OSS

  • Streamlit

    Streamlit

    ストリームリット。機械学習やデータサイエンス向けのグラフィカルなカスタムWebアプリケーションを簡単に作成して全世界に公開できる、オープンソースのWebアプリケーションのフレームワークです。

  • Django

    Django

    ジャンゴ。Pythonで実装されたWebアプリケーションのフレームワークです。

オープンソースに関する様々な課題、OpenStandiaがまるごと解決します。
下記コンテンツも
あわせてご確認ください。