【问题标题】:Best method to parse an HTML document and replace whole segments of tags解析 HTML 文档并替换整个标签段的最佳方法
【发布时间】:2014-11-28 02:30:07
【问题描述】:

我正在尝试找到从上到下解析 HTML 文档的最佳方法 将某些标签组替换为不同的标签并创建更新的文件。 我更喜欢使用 Java、VB.NET 或 PHP。

有几个类,例如JSoup,Jericho等,似乎可以很好地替换特定标签,但我想做的是替换/重写整个段。

例如我可能正在寻找一个表格,例如。

<table><tr><th>A header</th></tr><tr><td>Some text</td></tr><tr><td>More text</td></tr></table>

我想用

替换它
<div class="header">A header</div><p>Some text. More text</p>

但是,希望 HTML 文档的其余部分保持不变。

有人做过吗?最简单的方法是什么?你能推荐一个好的 HTML 解析器吗?

我正在解析的文档是 XHTML,所以我考虑过使用 java DOM 或 SAX 工具,但是,我发现这些工具很麻烦,想知道是否有更好的方法来处理一些现有的类。

非常感谢您的帮助。

【问题讨论】:

    标签: java html vb.net parsing replace


    【解决方案1】:

    是的,您需要一个 html 解析器来轻松正确地解析 html。你可以使用

    jsoup: Java HTML Parser

    jsoup 是一个用于处理真实世界 HTML 的 Java 库。它提供 一个非常方便的 API,用于提取和操作数据,使用 最好的 DOM。

    用soup解析一个html就这么简单:

    String html = "<table><tr><th>A header</th></tr><tr><td>Some text</td></tr><tr><td>More text</td></tr></table>";
    Document doc = Jsoup.parse(html);
    

    【讨论】:

    • 是的,我查看了 Jsoup,但正如我所提到的,它似乎适用于更改特定标签,但我没有发现替换一段标签的示例。以表格为例,您可能不知道它包含多少行。或者也许没有任何好的例子?在我的示例中,您将如何使用 Jsoup 来完成结果?
    猜你喜欢
    • 2011-02-18
    • 1970-01-01
    • 2011-01-12
    • 1970-01-01
    • 2015-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多