codex

2011年11月12日土曜日

Python - メールの日本語対応化・・・(悲)

前回のPythonスクリプトを少し修正すれば日本語対応化ができるかと思っていたら・・・
甘かった。

ここを参考にencodingに'ISO-2022-JP'をつければいけるのかな・・と思ってたが、
SyntaxError: Non-ASCII character ・・・
http://www.python.org/dev/peps/pep-0263/ここを参照しろと出た。

これは単純に一行目に
# -*- coding: utf-8 -*-
をつければいいらしい。

再実行後、
UnicodeEncodeError: 'ascii' codec can't encode characters.. なんたら・・・かんたら
エラーらしい。

» UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 2-8: ordinal not in range(128) | Google App Engine Blog BBTUNE

ここを参考に、
スクリプトでsys.setdefaultencoding('utf-8') をやってみた。
とりあえずはSL4A上ではエラーはでなくてメールも送信されたが、
おもいっきり本文が化けている・・・。

それと同時にddmsでcatlogを見ていたが、SL4Aもエラーを吐いてる・・・。

python恐るべし・・・。
とりあえずsetdefaultencodingを根本的にやるにはroot権限が必要みたいだし
その辺で引っかかってるならどうしようもないなぁ・・・。

pythonでの日本語メール送信はエポケー。
どうしても日本語メールを送信するならばperlを入れた方が良いような気がする・・・

0 件のコメント:

コメントを投稿