Как я могу получить неразрывные пробелы между двумя узлами при использовании посетителя узла? - PullRequest
0 голосов
/ 06 ноября 2019

Я пытаюсь разобрать следующий исходный код 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. Тем не менее, кажется, что содержимое пропускается между </a> и <a. Отключение красивой печати не решает мою проблему.

Вы можете запустить первый тест JUnit, чтобы воспроизвести эту ошибку: https://github.com/gouessej/HtmlFlow/blob/patch-1/src/test/java/htmlflow/flowifier/test/TestFlowifier.java Он преобразует исходный код HTML моей домашней страницы в исходный код Java, этопреобразует этот исходный код Java обратно в HTML и сравнивает полученный исходный код HTML с исходным исходным кодом.

PS: На самом деле TextNode.getWholeText() возвращает \n вместо &nbsp;&nbsp;&nbsp;\n.

1 Ответ

1 голос
/ 07 ноября 2019

TextNode.getWholeText() возвращает некоторый неэкранированный текст, мне просто нужно выйти из него, вызвав Entities.escape(TextNode.getWholeText()).

...