Pages

June 20, 2012

より高速なchardet、cchardetをリリースしました

以前の投稿にchardetがあまりにも遅いと嘆いていました。

これも何かの縁だと思い、Cythonの練習がてら、さっそくcchardetをリリースさせて頂きました!

ベンチを取ったのですが、C拡張なだけあってかなり早い結果が出ました。

chardetが4.009999990463257秒で検出したのに対し、cchardetは0.0009999275207519531秒と実に4000倍!(計算あっているか不安w)

割かし満足しています。

ただ不満もありまして、chardetはconfidenceを出力できるのに対し、cchardetはencodingしか吐きません。

これはcharsetdetectライブラリ側の問題なのですが、いずれソースをいじって得られるようにしたいと考えています。

もう1つはビルド環境がWindowsでしかおこなっていないため、setup.pyをもう少々柔軟なものに変えないと他のプラットフォームで扱えないことです。

この2つは時間があるときに修正していきたいと思います。

ではでは

PyYoshi / cChardet

追記 2012,06/20,22:39
linuxもビルドできるように修正しました。 Ubuntu 12.04 64bit環境で確認

追記 2012,07/07,14:35
confidenceを取得できるようにしました。


1 コメント:

Anonymous said...

cchardet、すばらしいです。
chardet でうまく検出できないデータを与えても、cchardet ではうまくいく場合があります。
chardet の内部処理が古いせいでしょうかね。
例: ttp://m-p.sakura.ne.jp/Html/anime.html

ともかく、速度・誤検出が解消したので、大変ありがたく利用させていただきます。

Post a Comment