【问题标题】:How can I get the non-breaking spaces between two nodes when using a node visitor?使用节点访问者时,如何获得两个节点之间的不间断空格?
【发布时间】:2020-03-03 09:12:55
【问题描述】:

我尝试解析以下 HTML 源代码:

<a href="./">Home</a>&nbsp;&nbsp;&nbsp;
<a href="http://gouessej.wordpress.com/tag/tuer/">Blog</a>&nbsp;&nbsp;&nbsp;

我实现了接口org.jsoup.select.NodeVisitor。但是,它似乎跳过了&lt;/a&gt;&lt;a 之间的内容。禁用漂亮的打印并不能解决我的问题。

您可以运行第一个 JUnit 测试来重现此错误: https://github.com/gouessej/HtmlFlow/blob/patch-1/src/test/java/htmlflow/flowifier/test/TestFlowifier.java 它将我主页的 HTML 源代码转换为 Java 源代码,然后将此 Java 源代码转换回 HTML,并将生成的 HTML 源代码与原始源代码进行比较。

P.S:实际上TextNode.getWholeText() 返回\n 而不是&amp;nbsp;&amp;nbsp;&amp;nbsp;\n

【问题讨论】:

    标签: java jsoup non-breaking-characters


    【解决方案1】:

    TextNode.getWholeText() 返回一些未转义的文本,我只需要通过调用 Entities.escape(TextNode.getWholeText()) 来转义它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-10
      • 1970-01-01
      • 2021-12-09
      相关资源
      最近更新 更多