解决Regain搜索UTF-8编码的中文网页出现乱码的有关问题

解决Regain搜索UTF-8编码的中文网页出现乱码的问题

从Open-Open上看到了Regain搜索引擎,Regain能对中文进行搜索和分词,感觉很好用。

正好一个朋友也要在项目中添加一个站内搜索的功能,推荐他使用Regain。

但是碰到了问题

下下来添加了几个网站搜索发现有的正常,有的是乱码。

经过对比发现,正常的事GBK编码的,显示乱码的是UTF-8编码的。从网上搜索相关的资料也没有相关的资料,非常郁闷。

这两天自己又要用一个站内搜索引擎。只好自己再去研究一下。

解决办法

经过查看源码和测试发现Regain在爬网页的时候UTF-8编码中文网页获取过来已经是乱码了。而且默认取的编码的系统的默认编码,于是我把java启动是加了一个参数-Dfile.encoding=UTF-8。这样搜索UTF-8编码的中文就不会有乱码了。即在启动regain时使用java -jar -Dfile.encoding=UTF-8 regain.jar启动。这样就可以正常运行了。

不过这样还是遗留了一个问题就是同时爬多个不同编码的网站的时候就会出问题了。就是说只能正确解析一种编码的网站。

 

1 楼 domocafe 2010-01-27  
这和 没解决一样啊 解决Regain搜索UTF-8编码的中文网页出现乱码的有关问题