随笔 - 0, 文章 - 264, 评论 - 170, 引用 - 0
数据加载中……

org.htmlparser.util.EncodingChangeException: character mismatch问题解决

场景:
项目中利用htmlparser抽取网页中的超链接,代码如下:
URL url = new URL(pageUrl);
URLConnection conn 
= url.openConnection();
parser 
= new Parser(conn);
list 
= parser.parse(new TagNameFilter("a"));
传参数pageUrl="http://tv.sohu.com/movie/"运行时,报错:
org.htmlparser.util.EncodingChangeException: character mismatch。

解决办法:
修改htmlparser.jar中的org.htmlparser.tags.MetaTag.java,修改如下:
public void doSemanticAction() throws ParserException {
        String httpEquiv;
        String charset;

        httpEquiv 
= getHttpEquiv();
        
if ("Content-Type".equalsIgnoreCase(httpEquiv)) {
            
if (Page.DEFAULT_CHARSET == getPage().getEncoding()) {
                charset 
= getPage().getCharset(getAttribute("CONTENT"));
                getPage().setEncoding(charset);
            }
        }
    }
重新运行,问题解决。

posted on 2012-08-22 18:04 小一败涂地 阅读(1386) 评论(0)  编辑  收藏 所属分类: 开源工具、插件相关lucene、solr等搜索技术相关


只有注册用户登录后才能发表评论。


网站导航: