2015-05-24 3 views
0

Я этот HTML-код с большим количеством этих блоков: Jsoup: извлечь внутренний тег

<tr> 
    <td headers="header1"><b><a href="www.site.com">TITLE</a></b></td> 
    <td headers="header2"><ul class="list_attachments"> 
    <li><a href="/"><img src='/img/fileicons/pdf.png' alt='pdf'/>A</a> 
    </li><li><a href=""><img src='/img/fileicons/pdf.png' alt='pdf'/> B</a> 
    </li></ul></td><td headers="header3" class="centrato">DATE</td></tr> 
    <tr> 

Для того, чтобы итерация во всех этих блоках, я попытался:

Elements elements = document.select("tr").select("td[headers=header1]"); 

Этого командная работа, но только выберите

<td headers="header1"><b><a href="www.site.com">TITLE</a></b></td> 

вместо всего блока. Как я могу это решить? Не представляется возможным сказать: «jsoup, пожалуйста, выберите все блоки, которые имеют внутренний

+0

Возможно элементы Элементы = document.select ("tr"). Select ("td")? – agamov

+0

Таким образом у меня нет итеративного блока ... – helloimyourmind

+0

Невозможно сказать: «jsoup, пожалуйста, выберите все блоки которые имеют внутренний ? – helloimyourmind

ответ

1

Чтобы выполнить задачу выбора всех <tr> блоков, которые содержат внутренний <td headers="header1">, я предлагаю следующее решение

Elements elements = document.select("tr:has(td[headers=header1])"); 
?.
+0

Спасибо моим друзьям, это прекрасно работает! – helloimyourmind

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