引用
原帖由
youwater 于 2007-8-1 11:38 发表
分别到
http://libcharguess.sourceforge.net 和
http://raa.ruby-lang.org/project/charguess 下载相应的软件包,前者是c++写的文本编码检测库,后者是ruby的绑定软件包。
分别解压到libcharguess和ruby-li ...
一切要编译的.. -.- 典型的debian风格..
言规正传, 还有个库是rchardet,是python-chardet的port. 而python-chardet, 是mozilla browser的encoding auto-detection实现的port.
关于细节, 可以看这里:
http://nextlib.lifegoo.com/user/sishen/article/2605 : A composite approach to language/encoding detection
我描了一下charguess,应该也是用其中的一个方法.
安装很简单.
$gem install rchardet
使用也很简单.
$irb -rubygems
irb(main):001:0> require 'rchardet'
=> true
irb(main):002:0> CharDet.detect("\xA4\xCF")
=> {"encoding"=>"EUC-JP", "confidence"=>0.99}
irb(main):003:0> CharDet.detect("中国")
=> {"encoding"=>"utf-8", "confidence"=>0.7525}
针对网页, 发起http request得到rawdata, 然后用rchardet去detect即可.