简体   繁体   English

用Jsoup解析表格html

[英]Parsing table html with Jsoup

I'm try to parsing this table: 我试着解析这个表:

    <table border="1" align="center" cellpadding="5" width="95%">  
 <tbody> 
  <tr> 
   <td colspan="2" align="center"> <b> <i> Test </i> </b> </td> 
   <td> <b> <i> Result </i> </b> </td> 
   <td> <b> <i> Credit </i> </b> </td> 
   <td> <b> <i> Data </i> </b> </td> 
   <td> <b> <i> A/A </i> </b> </td> 
   <td> <b> <i> Other data </i> </b> </td> 
   <td> <b> <i> A/A rif. </i> </b> </td> 
  </tr> 
  <tr> 
   <td> A000211 </td> 
   <td nowrap=""> Physic </td> 
   <td align="center"> - </td> 
   <td align="center"> 6 </td> 
   <td align="center"> - </td> 
   <td align="center"> 2008/2009 </td> 
   <td> something </td> 
   <td align="center"> 2007/2008 </td> 
  </tr> 
  <tr> 
   <td> 0065057 </td> 
   <td nowrap=""> Math </td> 
   <td align="center"> - </td> 
   <td align="center"> 6 </td> 
   <td align="center"> - </td> 
   <td align="center"> 2008/2009 </td> 
   <td> samething </td> 
   <td align="center"> 2008/2009 </td> 
  </tr> 
  <tr> 

In java i have this, for now: 在java中我有这个,现在:

Document doc = Jsoup.parse(url);


Elements tables = doc.getElementsByTag("table");

I try to put this data in JsonObject i must iterate this tables? 我尝试将这些数据放在JsonObject中我必须迭代这些表吗? or there is a simple way? 还是有一个简单的方法?

i solved with: 我解决了:

Document doc = Jsoup.parse(url);
       JSONObject jsonObject = new JSONObject();
       JSONArray list = new JSONArray();
       Element rows = doc.getElementsByTag("table tr");

      for(Element row : rows) {
          String Test = row.getElementsByTag("td").get(1).text();
          String Result = row.getElementsByTag("td").get(2).text();
          String Credit = row.getElementsByTag("td").get(3).text();

          jsonObject.put("Test", Test); 
          jsonObject.put("Result", Result);
          jsonObject.put("Credit", Credit); 
      }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM