From Evernote: |
python3でwebプログラミングに使えるライブラリ |
各フレームワークが対応中といううわさをそこそこ聞きますが、
今すぐpython3でwebプログラミングをしてみたい人もいると思うので、
python3で使えるライブラリを調べてみた。
Webアプリケーションライブラリ
- Beaker セッションとキャッシュ
- Jinja2 HTMLテンプレート
- Mako HTMLテンプレート
- MarkupSafe HTMLのエスケープなど
- PasteDeploy WSGIアプリケーションの設定ファイル
- SQLAlchemy O/Rマッパー
- WebDispatch URLやメソッドに対応したディスパッチャ
- WebOb リクエストレスポンスオブジェクト
1とおりのライブラリが出揃っているけど、
認証、認可と、フォームライブラリが不足しているかな?
あとPasteDeployは対応しているけどPasteScriptがないので、
コマンドラインツールが足りてない。
weberrorのようなデバッグツール、エラーレポートも欲しいところ。
WSGIサーバー
- tornado
- cherrypy
paste.httpあたりのポーティングが望まれるところ。
あと、tornadoはpastedeployのエントリポイント持ってない。
(10行以内で書けるけど)
テストツール
- nose ディスカバリやプラグインに対応したテストランナー
- Mock モックライブラリ
- WebTest 擬似リクエストを使ったWebアプリケーションテストツール
このあたり鉄板の組み合わせが使えるので、あまり不満はない。
ドキュメンテーション
- docutils
- Sphinx
docutilsはCategoriesに入ってないけど実際はpy3k対応されている。
まとめ
Webアプリケーションを書くにはまだちょっと足りない印象。
が、Webアプリケーションフレームワークを作るのには十分な下地ができてると思う。
各フレームワークがpython3対応したバージョンをリリースするのも近い。
とはいえ、実用で使おうと思うとサーバーに悩みます。
早くgunicornが対応してくれれば....
さて、アドベントカレンダーの次は @t2y さんにまわします。
よろしく。
その他、python3に対応を表明しているものは以下のリンクから一覧を確認できる。