2014-08-18 4 views
0

Я работаю над проектом, который использует Jsoup api для анализа html. В другом модуле я получаю объект htmlDom класса Document и пытаюсь получить все элементы заголовка. Я хочу извлечь все Элементы, которые имеют тип заголовка <h1, h2, ..., h6>Как получить все элементы заголовка анализируемого HTML с помощью Jsoup?

Я попытался пройти через Jsoup api, и в этом все методы для класса Elements, но не смогли найти методы, которые извлекают для меня элементы заголовка.

Просьба направить меня, если существуют какие-либо методы, которые могут упростить мой текущий код для извлечения элементов заголовка из коллекции Elements с использованием Jsoup.

Elements elementsObj = htmlDom.getAllElements(); 
for (Element htmlElement : elementsObj) { 
    // Match and extract all the headers from other elements 
    if (htmlElement.nodeName().matches("h[1-6]")) { 
     headerNodeList.add(htmlElement); 
    } 
+0

Предоставленный код - это то, что я использую в настоящее время, и требует, чтобы я прошел через все элементы в коллекции html dom. –

ответ

0

Что вы можете сделать, чтобы избежать зацикливания использовать select метод Jsoup в. Он позволяет выбирать элементы непосредственно из документа и избегать любой итерации. Вот еще один пост переполнения стека с тем же вопросом Jsoup: get all heading tags

+0

Спасибо, Это сработало. использовал его следующим образом: Элементы элементовObj = htmlDom.select ("h1, h2, h3, h4, h5, h6"); ' –

Смежные вопросы