2013-02-19 46 views
0

我想分開這個表的名字和時間表存儲在數據庫中,驗證是否已經包含了一些數據。如何用jsoup動態抓取每個表tr的第一個字段?

<table class="linha-horas"> 
<tbody> 
    <tr> 
    <th><h5>Profipo p/ Itaum</h5></th> 
    <th><h5>Itaum p/ Ulysses G</h5></th> 
    <th><h5>Ulysses G. p/ Itaum</h5></th> 
    <th><h5>Itaum p/ Profipo</h5></th> 
    </tr> 
    <tr> 
    <td>12:49</td> 
    <td>05:46</td> 
    <td>05:55</td> 
    <td>06:08</td> 
    </tr> 
    <tr> 
    <td>18:05</td> 
    <td>13:12</td> 
    <td>06:31</td> 
    <td>06:44</td> 
    </tr> 
    <tr> 
    <td class="empty"></td> 
    <td>18:29</td> 
    <td>11:01</td> 
    <td>11:14</td> 
    </tr> 
</tbody> 
</table> 

結果我想要的一個例子:

Profipo p/ Itaum 
12:49 
18:05 

Itaum p/ Ulysses G 
05:46 
13:12 
18:29 

和動態因此,如果表中包含多個日程表...

韓國社交協會

回答

0

的技巧是使用: eq() in select,請在下面找到代碼:

public final static String stack = "<table class=\"linha-horas\">" 
+"<tbody><tr><th><h5>Profipo p/ Itaum</h5></th><th><h5>Itaum p/ Ulysses G</h5>" 
+ "</th><th><h5>Ulysses G. p/ Itaum</h5></th><th><h5>Itaum p/ Profipo</h5></th></tr>" 
+ "<tr><td>12:49</td><td>05:46</td><td>05:55</td><td>06:08</td></tr>" 
+ "<tr><td>18:05</td><td>13:12</td><td>06:31</td><td>06:44</td></tr>" 
+ "<tr><td class=\"empty\"></td><td>18:29</td><td>11:01</td><td>11:14</td></tr>" 
+ "</tbody></table>"; 

public static void main(String[] args){ 
    System.out.println("the html content to parse is: "+stack); 
    Document doc = Jsoup.parse(stack); 
    Elements ths = doc.select("th"); 
    for(int i = 0; i < ths.size(); i++) 
    { 
     System.out.println(ths.get(i).text());//header 
     Elements tds = doc.select("tr td:eq("+i+")");//rows 
     for(Element td : tds) 
     { 
      System.out.println(td.text()); 
     } 
    } 
} 

和以下爲輸出:

the html content to parse is: <table class="linha-horas"><tbody><tr><th><h5>Profipo p/ Itaum</h5></th><th><h5>Itaum p/ Ulysses G</h5></th><th><h5>Ulysses G. p/ Itaum</h5></th><th><h5>Itaum p/ Profipo</h5></th></tr><tr><td>12:49</td><td>05:46</td><td>05:55</td><td>06:08</td></tr><tr><td>18:05</td><td>13:12</td><td>06:31</td><td>06:44</td></tr><tr><td class="empty"></td><td>18:29</td><td>11:01</td><td>11:14</td></tr></tbody></table> 
Profipo p/ Itaum 
12:49 
18:05 

Itaum p/ Ulysses G 
05:46 
13:12 
18:29 
Ulysses G. p/ Itaum 
05:55 
06:31 
11:01 
Itaum p/ Profipo 
06:08 
06:44 
11:14 
相關問題