Jsoup смешивает HTML с самозакрывающейся текстовой областью - PullRequest
0 голосов
/ 24 мая 2019

Я использую Jsoup, чтобы немного изменить HTML, и в этом HTML есть некоторые части, которые добавляются издателями сайта. При синтаксическом анализе HTML происходит нечто странное. Всякий раз, когда у него есть самозакрывающаяся текстовая область (которая, как я знаю, недействительна, но издатели иногда делают это), следующие элементы экранируются, так как они были частью текстовой области, например:

<div>
<div>
<textarea/>
</div>
</div>

Становится

<div>
<div>
<textarea></textarea>
&lt;/div&gt;
&lt;/div&gt;

Я бы ожидал, что это станет:

<div>
<div>
<textarea></textarea>
</div>
</div>

Могу ли я что-нибудь сделать, чтобы избежать такого поведения?

1 Ответ

0 голосов
/ 24 мая 2019

Используйте синтаксический анализатор XML, чтобы Jsoup не пытался исправить синтаксис HTML.

Document doc = Jsoup.parse("<div><div><textarea/></div></div>", "", Parser.xmlParser());
...