繁体   English   中英

JSoup 从 html 页面获取表格并将其转换为 JSON

[英]JSoup fetching table from html page and converting it to JSON

我在一个网站上有一张桌子,我试图刮桌子看起来像这样

<table>
  <tr>
    <th>Region</th>
    <th>City</th>
    <th>Code</th>
    <th>Status</th>
  </tr>
  <tr>
    <td>region one</td>
    <td>city one</td>
    <td>101</td>
    <td>active</td>
  </tr>
  <tr>
    <td>region one</td>
    <td>city two</td>
    <td>102</td>
    <td>active</td>
  </tr>
  <tr>
    <td>region three</td>
    <td>city three</td>
    <td>103</td>
    <td>inactive</td>
  </tr>
  <tr>
    <td>region four</td>
    <td>city four</td>
    <td>104</td>
    <td>active</td>
  </tr>
  <tr>
    <td>region five</td>
    <td>city five</td>
    <td>102</td>
    <td>active</td>
  </tr>
</table>

在此处输入图片说明

我可以使用 andorid jsoup 抓取网站

  Document document = Jsoup.connect("URL").get();
words = document.text();

这是我到目前为止我无法隔离表并将其放入 JSON 的地方

我试过这个,它工作正常

 JSONArray list = new JSONArray();
                for (Element table : doc.select("table")) {
                    for (Element row : table.select("tr")) {
                        Elements tds = row.select("td");
                        JSONObject jsonObject = new JSONObject();

                        if (tds.size() >= 2)
                        {
                            jsonObject.put("region", tds.get(0).text());
                            jsonObject.put("city", tds.get(1).text());
                            jsonObject.put("code", tds.get(2).text());
                            jsonObject.put("status", tds.get(3).text());
                            list.put(jsonObject);
                        }
                    }
                }

暂无
暂无

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

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