タグ

ブックマーク / wp.serpere.info (3)

  • Google App Engine習作: Thumbs.db reader | へびにっき

    Google App EngineでWindows XPのThumbs.dbを読み出すWebサービスを作りました。 Thumbs.db reader アップロードされたThumbs.dbを解析して、サムネイル画像(JPEGファイル)を取り出します。結果はdata:スキームを使ってimgタグで一覧表示するか、zipでまとめて取得するか選べます。アップロードされたファイルはサーバ側には保存されません。 Thumbs.dbの解析にはvinettoというプログラムを改造して使っていますが、GAEの制約によってtype 2という形式のものしか解析できません。 コマンドラインから使用する場合は http://thumbsdbreader.appspot.com/zip というURLに対してPOSTリクエストを送信してください。zipファイルが標準出力に出力されます。 curl -X POST --da

  • Google App EngineでMakoを使う | へびにっき

    Google App EngineでテンプレートエンジンMakoを使う方法……といっても、特別なことは何も必要ない。アーカイブを展開してできた mako ディレクトリをアプリケーションディレクトリにコピーすれば使えるようになる。 日語を使う場合の注意点についてはこちらを参照のこと。GAEではRequestもResponseもDatastoreもUnicodeに対応しているので、あまり神経質にならなくても大丈夫。 コード例 テンプレートファイルは views/ ディレクトリに置く デフォルトの拡張子は .html エンコーディングは utf-8 固定 次のようなベースクラスを用意しておく。 from mako.template import Template from mako.lookup import TemplateLookup class RequestHandler(webapp

  • テンプレートエンジンMakoで日本語を使う | へびにっき

    PythonのテンプレートエンジンMakoで日語を使う方法まとめ。 テスト環境: Python 2.5, Mako-0.3.2 Makoの内部処理はunicodeで行われる。そのため入出力時にエンコーディング指定を正しく行い、テンプレート変数の展開時にunicodeオブジェクトに変換することが必要になる。 入力時 テンプレートファイルが読み込まれる際に、ファイルで使用されている特定のエンコーディング・スキーム(utf-8など)に基づいて、unicode オブジェクトへのデコードが行われる。 最も優先順位の高い指定は、テンプレートファイル先頭行の magic encoding comment である。この一行はテンプレートの内容に含まれないので、HTMLなどに書いても問題ない。

  • 1