2010年11月25日木曜日

日本語テキストを扱う場合の Google AppEngine エラー

Google AppEngine で次のエラーが出ることがある。
Error: Server Error

The server encountered an error and could not complete your request.
If the problem persists, please report your problem and mention this error message and the query that caused it.
このエラー表示は、いろいろな原因で発生するようである。

Google App Engine の管理コンソールからログを見ると、次のようにエラーが表示されている。
<type 'exceptions.SyntaxError'>: Non-ASCII character '\xe3' in file
/base/data/home/apps/xxxxx/x.xxxxx/test.py on line 9, but no encoding declared; see
http://www.python.org/peps/pep-0263.html for details (test.py, line 9)
このエラーはpythonソース上でASCII文字以外を扱っている場合に表示される。

プログラムで日本語を扱っている場合は、pythonソースの先頭に次の一行を入れる。
# -*- coding: utf-8 -*-