虽然html与xml类似,但宽松的标准决定了它不能以xml解析器来解析,下面列出解析html的三种解决方案:
1.htmlparser
最常见的方法,htmlparser这个工具已经十分成熟了,解析各类html页面都可以胜任,但是选择标签的方法只有各类filter,没法按照网页结构来选择
优点:通用面广,鲁棒性强
缺点:结构查询能力太弱
2.tidy+xpath
tidy是将html页面转换为严格的xhtml页面的工具,转换以后的页面可以适应xml标准因此就可以使用xpath来解析了
优点:可以使用xpath强大的查询能力
缺点:目前tidy的通用性还不够,有些不标准的页面还是没法转换
3 jsoup
据说功能比htmlparser强大,有时间去试一下
================================
感觉确实比htmlparser强大,容易上手、查询方便、鲁棒性强,在没深入了解之前是找不到什么缺点了
最重要的就是容易上手这一点了,稍微看看文档就会用,查询方式用的是DOM和jquery的查询方式,不像htmlparser那些filter一样需要额外的学习,光是这点我想作为用jsoup的理由就足够了