抓取某软件数据请求及返回的数据格式

进入软件后点击最下面的行情,在新的页面中点击中间精选版块最右边的更多,要求提供新页面 精选,行业,概念,地区的数据请求(http://)及返回的数据格式,谢谢。
软件下载地址:https://www.kaipanla.com

public class GetStockList {
    // 起始页码
    private static final int page = 166;
    private static final String USER_AGENT = "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) "
            + "AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Mobile Safari/537.36";
    private static final String COOKIE = "_gat=1; nsfw-click-load=off; gif-click-load=on;"
            + " _ga=GA1.2.1861846600.1423061484";

    public static void main(String[] args) {
        // HttpClient 超时配置
        RequestConfig globalConfig = RequestConfig.custom().setCookieSpec(CookieSpecs.STANDARD)
                .setConnectionRequestTimeout(6000).setConnectTimeout(6000).build();
        CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(globalConfig).build();
        String url = "http://www.yz21.org/stock/info/";
        String urlToReq = "";
        StockProxy dao = StockProxy.getInstance();
        try {
            for (int i = 1; i <= page; i++) {
                // 创建一个GET请求
                String strParams = "/stocklist_" + i + ".html";
                if (i == 1) {
                    strParams = "";
                }
                urlToReq = url + strParams;
                // 停留一秒后开始任务
                Thread.sleep(1000);
                // 发送请求,并执行
                String htmlForStock = HttpHelper.getHtmlStrByUrl(urlToReq, httpClient, COOKIE, USER_AGENT);
                if (!htmlForStock.contains("找不到文件或目录")) {
                    // 网页内容解析
                    System.out.println("该网页存在,正在解析:" + urlToReq);
                    Document doc = Jsoup.parse(htmlForStock);
                    // 获取table表的行集合元素
                    Elements trs = doc.getElementById("All_stocks1_DataGrid1").select("tr");
                    SharePo sharePo = new SharePo();
                    for (int j = 1; j < trs.size(); j++) {
                        Elements tds = trs.get(j).select("td");
                        sharePo = new SharePo();
                        Element link = tds.get(1).select("a").first();
                        String relHref = link.attr("href");
                        String strtype = "";
                        if (relHref.contains("sh")) {
                            strtype = "sh";
                        } else if (relHref.contains("sz")) {
                            strtype = "sz";
                        }
                        // 股票代码
                        sharePo.setSharecode(strtype + tds.get(1).text());
                        // 股票简称
                        sharePo.setSharename(tds.get(2).text());
                        // 公司名称
                        sharePo.setCompanyname(tds.get(3).text());
                        // 股票简称拼音
                        sharePo.setCompanyshort(tds.get(4).text());
                        dao.addShare(sharePo);
                    }

                } else {
                    System.out.println("该网页不存在:" + urlToReq);
                    break;
                }
            }

        } catch (Exception e) {
            e.printStackTrace();
        }

    }
}


public class HttpHelper {

    public static String getHtmlStrByUrl(String url, CloseableHttpClient httpClient, String COOKIE, String USER_AGENT) {
        HttpGet httpGetForFName = new HttpGet(url);
        httpGetForFName.addHeader("User-Agent", USER_AGENT);
        httpGetForFName.addHeader("Cookie", COOKIE);
        httpGetForFName.addHeader("Content-Type", "text/html;charset=UTF-8");
        // 发送请求,并执行
        CloseableHttpResponse response;
        String html = "";
        try {
            response = httpClient.execute(httpGetForFName);         
            InputStream in = response.getEntity().getContent();
            html = Utils.convertStreamToString(in);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return html;
    }

}
public class StreamUtils {

    public static String convertStreamToString(InputStream in) {
        StringBuilder sb = new StringBuilder();
        try {

            InputStreamReader isr = new InputStreamReader(in, "UTF-8");
            BufferedReader reader = new BufferedReader(isr);
            String line = null;
            while ((line = reader.readLine()) != null) {
                sb.append(line + "/n");
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                in.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return sb.toString();

    }
}
public class SharePo {

    private Long shareid;
    private String companyname;
    private String companyshort;
    private String sharecode;
    private String sharename;
    private Double todaybeginprice;
    private Double yesterdaycloseprice;
    private Double nowprice;
    private Double highprice;
    private Double lowprice;
    /**在此省略get/set方法**/

}

可以参考以上代码

采纳后可以按照你的要求写一个

有用上么,楼主。现在kaipanla的url好像不好使了。现在该怎么获取数据呢。