所以这里是挑战…我需要从野外的随机网页创建干净的
HTML.我的目标是阅读一个页面,并将其传递给一个图书馆,这将反过来给我完美的HTML格式.
听起来不那么难,对吧?毕竟,市场上的每个浏览器都有效地处理了畸形HTML的挑战,并将其变成几乎每一页加载的可呈现的东西.每个都有自己的稍微特别的算法,用于清理内容(对于HTML< 5而言),但是他们倾向于很好地捕获我喜欢作为作者的意图.那么那么为什么我找不到一个好的java库来完成这个任务呢?
有一点要提到的是,我完全不喜欢将XML解析为XML.我发现,像NekoHTML,TagSoup,HtmlCleaner和JTidy这样的库(更多的是)将更多的重点放在解决将HTML转换为有效XML的问题上,而且在这个过程中,格式化文档应重新构造.使用讨厌的HTML,他们经常不会捕获作者的意图,并且吐出与原始来源截然不同的文档.对于这个项目来说,这两个文件是非常重要的.
我非常喜欢Jericho HTML,但这似乎不是理想的这个工作的候选人,至少我没有做很多努力.此外,本机依赖是一个不用,所以mozilla解析器是出来的.
任何人都可以帮我找到完美的HTML解析器吗?提前致谢!