【问题标题】:Parsing table html with Jsoup使用 Jsoup 解析表格 html
【发布时间】:2014-01-01 15:33:41
【问题描述】:

我正在尝试解析这个表:

    <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> 

在java中我有这个,现在:

Document doc = Jsoup.parse(url);


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

我尝试将这些数据放入 JsonObject 中,我必须迭代这些表吗?或者有什么简单的方法?

【问题讨论】:

标签: java html json parsing jsoup


【解决方案1】:

我解决了:

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); 
      }

【讨论】:

    猜你喜欢
    • 2019-10-10
    • 1970-01-01
    • 2015-08-17
    • 2018-09-04
    • 2015-10-14
    • 2011-07-20
    相关资源
    最近更新 更多