SpamBayes-1.0.4 日本語版で下記エラーが時々出ます。
Traceback (most recent call last):
File "/usr/bin/sb_filter.py", line 257, in ?
main()
File "/usr/bin/sb_filter.py", line 248, in main
action(msg)
File "/usr/bin/sb_filter.py", line 180, in filter
return self.h.filter(msg)
File "/var/tmp/spambayes-1.0.4-root/usr/lib/python2.3/site-packages/spambayes/hammie.py", line 109, in filter
File "/var/tmp/spambayes-1.0.4-root/usr/lib/python2.3/site-packages/spambayes/hammie.py", line 38, in _scoremsg
File "/var/tmp/spambayes-1.0.4-root/usr/lib/python2.3/site-packages/spambayes/classifier.py", line 190, in chi2_spamprob
File "/var/tmp/spambayes-1.0.4-root/usr/lib/python2.3/site-packages/spambayes/classifier.py", line 496, in _getclues
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 5: ordinal not in range(128)
procmail: Program failure (1) of "/usr/bin/sb_filter.py"
procmail: Rescue of unfiltered data succeeded
数日に一回あるか無いかくらいなので、実害はなさそうですが、原因は不明。
当該メールを Sylpheed で見ると、ヘッダの途中から化け化けになってます。
データは保存してあるので、何れ時間がとれたら調べるかも。
UTF-8 化
このサイトをUTF-8にしたのは良いが、これから問題出そう。
投稿フォーム:
python 2.4 で CJK codecs が組み込まれ、スプリッタも公開された。
http://cjkpython.i18n.org/index-ja.html
http://zope.org/Members/panjunyong/CJKSplitter
そんなに簡単に三国版スプリッタを作れるものだろうか? 当分は ejSplitter を利用するつもり。
最近は仕事でも unicode を意識しないといけなくなってきたので、ちょっとだけ勉強再開。
http://www.debian.or.jp/~kubota/unicode-symbols.html.ja
http://www.debian.or.jp/~kubota/links-characters.html
http://www.ingrid.org/java/i18n/unicode.html
まずは此の辺りで基礎知識を仕入れないといけません。何度も読み直さないと定着しないけど;;
とりあえず C/C++ で使える変換ツール探してみたけどいろいろありますね。
1. iconv (glibc-common-2.3.3-3vl1)
http://www.opengroup.org/onlinepubs/007908799/xsh/iconv.html
glibc の中に最初から入ってる。お手軽。
2. icu (icu-3.0-0vl1, libicu30-3.0-0vl1, libicu-devel-3.0-0vl1)
http://oss.software.ibm.com/developerworks/opensource/icu/project/index.html
豊富な機能を持つライブラリだけどマンモス(死語。けど CP-932 テーブルはおそ松君らしい。
3. xunicode
http://sourceforge.net/projects/xunicode/
軽量ライブラリ。WideStudio も使用してる。ただし CP-932 は非サポート(SJISのみ)。
>>39:debian あたりの状況はどうなんでしょう?
こんなの流れて来たので、Sidでこの状態だから、Vineと似たり寄ったりかと。
[debian-users:41497] HOWTO: GDM利用し,UTF-8化とWMやlocalesの自由な切替え+New IMの味見
---------------------------------------------------------------------------------------
Sidの日本語環境についてちょっと色々いじってみました。以下参考まで。
アイデアなど有ったらお聞かせ下さい。
基本はXDM+language-envでEUCというのは分かっています。でもここでは、UTF-8
環境とGDMを中心に使う快適環境を追求しました。何と言ってもGDMはグラフィクス
スタート画面にもなるので最もきれいにできます。WDMも結構使えます。
KDMはssh-agentの問題もあるので私は避けています。
(http://lists.debian.org/debian-devel/2004/09/msg01333.html)
以下削除
---------------------------------------------------------------------------------------
むしろ、赤帽やターボくんの方がすすんでたりして。
>>37 無謀にもUTF-8を試用しています
そう云えば Kondara は確かシェルレベルで unicode ベースでしたよね。Vine は現在 unicode 化する計画は無いそうです。debian あたりの状況はどうなんでしょう? 計画はなくとも将来の見通しくらいは立てたいなーと。
>>37 オリジナルの方で
kconv-1.1.8p-3.tar.gz はなかなか見付からないかもしれないので、
ftp://owa.as.wakwak.ne.jp/pub/misc/
に置いてみました。(python 版の方です)
>>お勧めはやはりVineでしょうか
僕には難しい質問ですね;;
(少なくとも、ここには vine + zope 使いが何人かお見えになられます)
特殊なハードや、特定のソフトを利用する場合にはディストリビューションを選ばないといけない場合があるかもしれませんが、個人で使用する場合好き嫌いの要素が大きいかも(なんて無責任な;;)
比較的利用者が多くメーリングリストも活発なものを選ぶなら vine, debian, ... 新しもの好きなら fedora, gentoo, suse, mandrake, ... セキュリティ重視なら debian, OpenBsd などと云われているようですけど。
追加: 参考に http://zope.fubyshare.net/Max/SiteBites/202#comments
>>36
お答え有難う御座います。
実は、検索エンジンに引っかかりにくいというのと、なんとなく新しそうだからという理由で、無謀にもUTF-8を試用しています。しかし携帯アクセスや使用中のMySQLがユニコード未対応なことから、euc-jpに変更したくなりまして今回しようさせて頂きました。
kconvはコンパイルが必要で、コンパイラをあわせる必要があるとか何とかという記事を見たことがありまして、なんとなく敬遠していました。そのうちPC用意してLinux+ZOPEにしようと思っていたというのも有ります。ちょうど先日空きPCが用意できたので、この機会にLinuxに移行してみるのもいいかなと思い始めていますが、お勧めはやはりVineでしょうか?
kconvの方はSourceForge.jpで引き継がれているほうしか見ていなかったので、オリジナルの方で気合入れて取り組んでみます。
>>35
JCodeChanger は主に Kconv で試しています。pykf だけだとうまく動作しないかもしれません。unix 系マシンの場合 euc と utf-8 を扱うことが多いので Kconv の判定のほうが良さそうだったと云う理由もありました。Shift_JIS 系のマシンの場合は pykf の方が良いのかもしれません。
Kconv は kconv-1.1.8p-3.tar.gz でテストしてあります。この版がオリジナル作者の最後のバージョンで、これ以降のバージョン番号を付けた版ではうまく動作しないという記事を何度か目にしてます。インストール方法は解凍したディレクトリの中に README があると思います。
取り急ぎですが...
はじめましてこんにちわ。
非公開でZOPEサーバを立てて練習しているものです。こちらではいろいろと有用な情報を載せていただいて助かっています。
JCodeChangerを使用させていただいたのですが、ちょっとうまく動作させることができなかったので質問させてください。
まずプロダクト自体は普通に入ったのですが、実際にオブジェクトを作って変換しようとする際
PropertyとContentsの2箇所にチェックボックスがあり、現在の文字コードだと思われるものがチェックボックスの右に書いてあります。Propertyの方は問題ないのですが、Contentsの方がどのオブジェクトもus_asciiになっています。もちろんtitleやtextは日本語も含んでいますし表示もできていました。
JCodeChangerのスクリーンショットではContentsの部分もeuc-jpになっていたので、何かが出来ていないようです。
実はkconvを当てていないのですが、pykfとJapaneseCodecは入れてあります。
ここが原因かとは思っているのですが、kconvはまだ当て方がわからない状態です。
なにか思い当たることがありましたら、教えていただけないでしょうか?
ZOPE2.6.4rc2 on win;Python 2.1.3
忘れ物発見;; BBSの管理画面はすべて euc-jp のままでした(笑
たまにしか使わないのだけど、いざと云う時には必須なツールです。チャット BBS ももうすぐ一年経ちます。本家は進化版 imgBBS に移行するのかな。こちらもいろいろやりたいことが溜ってきましたが時期が大事。
>>32 vocabulary.py
見ました dict にしてました。一方JCodeChanger ではファイルにしています。ZMI レベルに限定すれば dict で持たせるのが簡単そうですね。
今考えているのが将棋プロダクトなんですが、たとえばルールの説明やチュートリアルくらいに分量が増えてくるとファイルにするのが良いのかと思ってます。
例えば EUC-JP でテキスト書けば一発で UTF-8 や Shift_JIS に変換できるし、english で書けば仏独露西...と自動翻訳機にかけられるとか。
まだ先の話なので、おいおい調べていきます。vocabulary.py は流用するかもしれません。ありがとうございました。