@galliard

Как парсить HTML с помощью xpath в JAVA?

Собственно есть такой код
var source = new InputSource(new StringReader(html));

var xpath = XPathFactory.newInstance().newXPath();

var result = (String) xpath.evaluate(expression, source, XPathConstants.STRING);


Проблема в том, что кож заточен на парсинг XML, а мне нужно парсить HTML, который может содержать незакрытые теги и прочие радости HTMLной жизни, натыкаясь на которые данный код падает.

Есть ли какой-то способ парсить именно HTML со всеми его особенностями?

P. S. варианты с регулярками пока не рассматриваю.

UPD

Нашел вариант с использованием библиотеки https://github.com/code4craft/xsoup

var document = Jsoup.parse(html);

var result = Xsoup.compile(expression).evaluate(document).getElements().get(0).text();


Но все-таки хотелось бы рассмотреть другие варианты, может быть есть что-то нативное, без установки дополнительных библиотек?
  • Вопрос задан
  • 258 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы