草庐IT

android - 在 Android 上解析 HTML,主要性能问题

我需要解析大约100kB的HTML数据,这只会导致Android上出现巨大的性能问题。我已经尝试了内置的XML解析器和JTidy。内置的XML解析器给我大约半秒的解析时间,我可以轻松接受。问题是使用XML解析器来解析凌乱的HTML代码不是一个好主意,这不是一个选项。(我尝试过预处理,但它甚至开始提示有效的HTML,所以...)我在谷歌上搜索了一下,有人建议JTidy在将代码传递给XML解析器之前清理代码。这绝对是一场噩梦,使用JTidy进行预处理解析现在大约需要7秒。所以现在我唯一的选择就是正则表达式。你怎么看? 最佳答案 这取决于

java - 如何通过在属性周围加上引号来清理用于 Java 解析的 XML 文件

我有一系列看起来像这样的xml文件:SometexthereMoretext...我正在尝试使用标准DOM方式解析xml,但是因为P的属性值不在引号中,Java提示道。我尝试使用JTidy来清理它,但因为我的xml不是HTML,Tidy会抛出错误,提示它无法识别标签和等等那么,还有其他方法吗?或者,我想我可以使用正则表达式,因为唯一没有引号的属性出现在中。标签。有什么想法吗?提前致谢 最佳答案 AllIhadtodowassettidy.setXmlTags(true)sothattidytreatstheinputasXMLand

java - JTidy Node.findBody() — 如何使用?

我正在尝试使用JTidy进行XHTMLDOM解析,这似乎是一项相当违反直觉的任务。特别是,有一种解析HTML的方法:NodeTidy.parse(Reader,Writer)为了获得那个节点的,我想,我应该使用NodeNode.findBody(TagTable)我应该从哪里获得该TagTable的实例?(构造函数protected,我还没找到工厂生产。)我使用JTidy8.0-SNAPSHOT。 最佳答案 我发现有很多更简单的方法来提取body:tidy=newTidy();tidy.setXHTML(true);tidy.set

java - jTidy 和 TagSoup 文档

我正在寻找TagSoup和jTidy库的文档(如果可能的话,官方文档)。我想使用这个库来操作html“tagsoup”文件,这些文件包含xml标签,在html(html、xhtml或html5)标签之间混合了不同的命名空间。我已经测试了HTMLCleaner、NekoHTML和Jericho,但我没有找到jTidy和TagSoup的文档,除了最简单的清除文件的示例。我需要有关操作内容、替换标签、提取信息等的文档...谢谢注意:测试所有选项后,我使用了StAX/Woodstox:http://wiki.fasterxml.com/WoodstoxHomehttps://en.wikipe

java - 用于 Java 的 JTidy 或 Jsoup

最近我一直在使用BeautifulSoup在python中开发网络抓取工具。现在我想知道哪些库在Java中最受欢迎。我做了一些搜索,主要是看到JTidy和JSoup。它们有什么区别? 最佳答案 JTidy更常用于整理HTML,即修复格式错误或错误的HTML,例如未闭合的标签,例如来自text至text.JSoup,另一方面,提供了一个完整的API来解析HTML和以提取它的部分。它允许您像selectors一样使用jQuery查找元素,或DOMmethods,等同于你在JavaScript中使用的那些,比如getElementById

java - jTidy 在整理 HTML 后不返回任何内容

我在使用jTidy(在Android上)时遇到了一个非常烦人的问题。我发现jTidy适用于我测试过的每个HTML文档,但以下内容除外:templatesPageHeadingHomeContact©Copyright但是在整理之后,jTidy什么都不返回(例如,如果包含TidiedHTML的字符串被称为结果,result.equals("")==true)不过我注意到一些非常有趣的事情:如果我删除HTML正文部分中的所有内容,jTidy将完美运行。中有什么是jTidy不喜欢的吗?这是我使用的Java代码:publicStringtidy(StringsourceHTML){S

java - jTidy 在整理 HTML 后不返回任何内容

我在使用jTidy(在Android上)时遇到了一个非常烦人的问题。我发现jTidy适用于我测试过的每个HTML文档,但以下内容除外:templatesPageHeadingHomeContact©Copyright但是在整理之后,jTidy什么都不返回(例如,如果包含TidiedHTML的字符串被称为结果,result.equals("")==true)不过我注意到一些非常有趣的事情:如果我删除HTML正文部分中的所有内容,jTidy将完美运行。中有什么是jTidy不喜欢的吗?这是我使用的Java代码:publicStringtidy(StringsourceHTML){S

java - 我如何使 JTIdy 使 HTML 文档格式正确?

我正在使用JTidyv.r938。我正在使用这段代码来尝试清理页面……finalTidytidy=newTidy();tidy.setQuiet(false);tidy.setShowWarnings(true);tidy.setShowErrors(0);tidy.setMakeClean(true);Documentdocument=tidy.parseDOM(conn.getInputStream(),null);但是当我解析这个URL时--http://www.chicagoreader.com/chicago/EventSearch?narrowByDate=This+Wee

java - 我如何使 JTIdy 使 HTML 文档格式正确?

我正在使用JTidyv.r938。我正在使用这段代码来尝试清理页面……finalTidytidy=newTidy();tidy.setQuiet(false);tidy.setShowWarnings(true);tidy.setShowErrors(0);tidy.setMakeClean(true);Documentdocument=tidy.parseDOM(conn.getInputStream(),null);但是当我解析这个URL时--http://www.chicagoreader.com/chicago/EventSearch?narrowByDate=This+Wee
12