我需要在我的Android中处理一些HTML页面,我更愿意使用XPath来提取相关信息。对于常规的J2SE,有很多可能的实现将普通的org.w3c.dom.Document解析成org.w3c.dom.Document:
(列表可能是不完整的--它是从https://stackoverflow.com/questions/2009897/recommend-an-alternative-to-jtidy中提取的)
但是,评估这些库在Android (库大小、cpu和内存消耗)上的工作效果和效果是非常复杂的。
基于您的经验-您选择的安卓库是什么?
发布于 2011-09-29 10:01:34
好吧,看来没人能回答这个问题-那我得亲自检查一下。
jTidy
我下载了最新的jTidy源代码,对它们进行了编译,并将创建的jar文件作为库添加到我的安卓应用程序中。在我的应用程序(仿真器和真正的手机)中使用jTidy没有问题。在运行时,jTidy也可以正常工作--但它似乎并不适合有限的Android环境--它的工作非常慢。查看Logcat输出,甚至解析一个~10 at的html文件都会导致垃圾收集器大量工作。
HTMLCleaner
根据我的经验,HTMLCleaner在Android上工作也很不错;库的大小相对较小(v2.2为106 is )。但是,它创建的解析DOM并不像预期的那样--例如,HTMLCleaner在DOM中插入额外的<span>元素。如果您想将它显示为HTML文件,这可能是可以的,但是对于我的用例-通过XPath表达式扩展信息-这是一个禁止!
TagSoup
未测试
Jericho
未测试
NekoHTML
未测试
JSoup
未测试
https://stackoverflow.com/questions/7545972
复制相似问题