JTidy Node.findBody () & # 8212; Как пользоваться?
Вопрос
Я пытаюсь выполнить синтаксический анализ XHTML DOM с помощью JTidy, и это кажется довольно нелогичной задачей. В частности, есть метод для анализа HTML:
Node Tidy.parse(Reader, Writer)
И чтобы получить < body / > этого узла, я полагаю, я должен использовать
Node Node.findBody(TagTable)
Где мне взять экземпляр этого TagTable? (Конструктор защищен, и я не нашел фабрику для его производства.)
Я использую JTidy 8.0-SNAPSHOT.
Решение
Я обнаружил, что есть намного более простой метод для извлечения тела:
tidy = new Tidy(); tidy.setXHTML(true); tidy.setPrintBodyOnly(true);
А затем используйте tidy для пары Reader-Writer.
Просто, как и должно быть.
Другие советы
Вместо этого вы можете использовать метод parseDOM
, который вернет вам org.w3c.dom.Document
:
Document document = Tidy.parseDOM(reader, writer);
Node body = document.getElementsByTagName("body").item(0);
Не связан с StackOverflow