2013-06-15 3 views
0

나는 이것을 잠시 동안 일해 왔으며, 단지 가지고있는 헤더에 해당하는 올바른 테이블을 얻는 방법을 찾지 못하는 것 같습니다. 테이블은 섹션 내에서 검색 할 수 있지만 테이블의 제목이있는 머리글입니다. 문자열과 일치하는 헤더가있는 섹션을 찾아 데이터를 가져와야합니다. "(jsoup 헤더에서 특정 테이블을 가져 오는 것

<section class="blueTab"> 
      <header><h2>Energy</h2></header> //<----- THE HEADER I NEED TO MATCH TO 
      <table class="infoTable"> 
       <tr><th>Model</th><th>0-60 mph</th><th>Top Speed</th><th>BHP</th><th></th></tr> 

         <tr> 
          <td><p>1.4i 16V Energy 5d</p></td> 
          <td><p>12.8 secs</p></td> 
          <td><p>111 mph</p></td> 
          <td><p>88 bhp</p></td> 
         </tr> 

         <tr class="alternate"> 
          <td><p>1.6i 16V Energy 5d</p></td> 
          <td><p>11.5 secs</p></td> 
          <td><p>115 mph</p></td> 
          <td><p>103 bhp</p></td> 
         </tr> 

         <tr> 
          <td><p>1.8i VVT Energy 5d Auto</p></td> 
          <td><p>10.7 secs</p></td> 
          <td><p>117 mph</p></td> 
          <td><p>138 bhp</p></td> 
         </tr> 

         <tr class="alternate"> 
          <td><p>1.3 CDTi 16V Energy 5d</p></td> 
          <td><p>12.8 secs</p></td> 
          <td><p>107 mph</p></td> 
          <td><p>88 bhp</p></td> 
         </tr> 

      </table> 

      <div class="fr topMargin"> 
       <div id="ctl00_contentHolder_topFullWidthContent" class="modelEnquiry"> 


<div id="ctl00_contentHolder_topFullWidthContent" class="buttonLinks"> 

</div> 
<div class="cb"><!----></div> 

</div> 
      </div> 
      <div class="cb"><!----></div> 
    </section> 

임 내가 doc.getElementsByClass을 사용해야합니다 추측 : 나는 테이블에서 데이터를 점점 괜찮아 그것의 단지 부분의

HTML 추출물 테이블에 대한 올바른 섹션을 받고 H2 찾고 문자열 메신저와 동일한 경우 루프 각 요소의에서 blueTab ")는 내가이

답변

1

이이 문제를 해결해야 구현하는 방법을 단지 확실하지 오전 참조

Document doc = Jsoup.parse(input, "UTF-8"); 
    Elements elem = doc.select(".blueTab header h2"); 
    for (Iterator<Element> iterator = elem.iterator(); iterator.hasNext();) 
    { 
     Element element = iterator.next(); 
     if (element.text().equals("Energy")) // your comparison text 
     { 
      Element tableElement = element.parent().nextElementSibling(); //Your got the expected table Element as per your requirement 
     } 

    } 
관련 문제