CherryPy は、Pythonプログラミング言語を用いたオブジェクト指向Webアプリケーションフレームワークである。

CherryPy
開発元 CherryPy team
最新版
18.1.1 / 2019年3月27日 (5年前) (2019-03-27)
リポジトリ ウィキデータを編集
プログラミング
言語
Python
対応OS クロスプラットフォーム
種別 Webアプリケーションフレームワーク
ライセンス BSD License
公式サイト www.cherrypy.org
テンプレートを表示

HTTPプロトコル(Adapterで)ラップすることによるWebアプリケーション素早い開発を目的として設計されている。しかし、低レベルの位置にとどまり、RFC 2616で定義されている以上の機能は提供しない。

CherryPy は Web サーバそのものとして動作することもでき、また(Apache 2 などを含む)WSGI環境であれば、外部から起動させることもできる。CherryPy は、出力を表示させるためのテンプレートや、バックエンドへのアクセス、認証プロトコルなどの処理は行わない。フレームワークは、7つの関数をもつ簡潔なインタフェースからなるフィルターによって拡張可能である。これらは、リクエスト/レスポンス処理中の定義された場所で呼び出される。

Python インターフェイス 編集

プロジェクトの創設者Remi Delonの目的の一つが、CherryPy を可能な限りPythonらしくすることであった。これにより開発者がこのフレームワークを標準の Python モジュールとして使用することができ、(技術的な観点からは)アプリケーションが web 用であることを忘れることができる。

たとえば、よくある Hello World は CherryPy 3 では以下のようになる:

import cherrypy

class HelloWorld(object):
    def index(self):
        return "Hello World!"
    index.exposed = True

cherrypy.quickstart(HelloWorld())

関連書籍 編集

関連項目 編集

  • CherryTemplate - CherryPy 向けのテンプレート言語
  • TurboGears - CherryPy は TurboGears の主要コンポーネントである


外部リンク 編集