Ответ 1
JSoup пока не поддерживает XPath, но вы можете попробовать XSoup - "Jsoup с XPath".
Здесь приведен пример из проектов сайта Github (ссылка):
@Test
public void testSelect() {
String html = "<html><div><a href='https://github.com'>github.com</a></div>" +
"<table><tr><td>a</td><td>b</td></tr></table></html>";
Document document = Jsoup.parse(html);
String result = Xsoup.compile("//a/@href").evaluate(document).get();
Assert.assertEquals("https://github.com", result);
List<String> list = Xsoup.compile("//tr/td/text()").evaluate(document).list();
Assert.assertEquals("a", list.get(0));
Assert.assertEquals("b", list.get(1));
}
Там вы также найдете список функций и выражений XPath, которые поддерживаются XSoup.