0

私はAndroidアプリでhtmlを解析するためにJsoupライブラリを使用しています。これは解析したいhtmlページの列です。

<TD width="9%" ROWSPAN = 2>Days</TD>

ここで、この列のすべての行を取得したいと思います。次のコードを使用して目標を達成しましたが、成功は遠いです。

StringBuilder s = new StringBuilder(100);

Document doc = Jsoup.parse(htmlPage);

Elements links = doc.select("table tr.Day");

for (Element link : links) 
{
    String linkHref = link.attr("href");
    System.out.println(linkHref);
    s.append(linkHref);
    String linkText = link.text();
    System.out.println(linkText);
    s.append(linkText);
}

たくさん検索しましたが、役に立ちませんでした。助けてください。よろしくお願いします。

4

1 に答える 1

1

HTML が次のようになっているとします。

  <table> 
   <tbody>
    <tr>
     <td width="9%" rowspan="2">Days</td> 
     <td>a</td> 
     <td>b</td> 
     <td>c</td> 
     <td>d</td> 
    </tr>
   </tbody>
  </table>

私が理解できれば、tdタグの下のすべてに日数が必要です。

Document doc = Jsoup.parse(htmlPage);

for( Element element : doc.select("td:contains(days) ~ *") ) // Select everything followed after the 'td' tag with 'days' text
{
    System.out.println(element); // do something with the elememnt
}

この出力を取得する前に投稿された html を使用します。

<td>a</td>
<td>b</td>
<td>c</td>
<td>d</td>
于 2013-02-19T11:59:23.397 に答える