新浪获取股票实时数据接口(22年春节后)
2022年春节前夕新浪获取股票实时行情接口进行调整。请求:http://hq.sinajs.cn/list调用返回:Kinsoku jikou desu!
2022年春节前夕
新浪获取股票实时行情接口,获取数据进行调整。
请求:http://hq.sinajs.cn/list
调用返回:Kinsoku jikou desu!
以下为最新获取方法(Java):
HtmlPage htmlPage;
URL urlTabBet = null;
String URL = "http://hq.sinajs.cn/list=sh601500";
WebRequest webRequest;
WebClient webClient = new WebClient(BrowserVersion.CHROME);
webClient = new WebClient(BrowserVersion.CHROME);
webClient.setCssErrorHandler(new SilentCssErrorHandler());
webClient.setAjaxController(new NicelyResynchronizingAjaxController());
webClient.getOptions().setJavaScriptEnabled(true);
webClient.getOptions().setActiveXNative(false);
webClient.getOptions().setCssEnabled(false);
webClient.getOptions().setTimeout(120 * 1000);
webClient.getOptions().setThrowExceptionOnScriptError(false);
webClient.getOptions().setThrowExceptionOnFailingStatusCode(false);
webClient.getOptions().setRedirectEnabled(true);
webClient.getCookieManager().setCookiesEnabled(true);
try {
urlTabBet = new URL(URL);
} catch (MalformedURLException e1) {
e1.printStackTrace();
}
webRequest = new WebRequest(urlTabBet, com.gargoylesoftware.htmlunit.HttpMethod.POST);
Map<String, String> additionalHeaders = new HashMap<String, String>();
additionalHeaders.put("User-Agent", "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.104 Safari/537.36");
additionalHeaders.put("Accept-Language", "zh-CN,zh;q=0.8");
additionalHeaders.put("Accept", "*/*");
additionalHeaders.put("referer", "http://finance.sina.com.cn");
webRequest.setAdditionalHeaders(additionalHeaders);
try {
htmlPage = webClient.getPage(webRequest);
String contentAsString = htmlPage.getWebResponse().getContentAsString();
//以下自行数据处理
} catch (FailingHttpStatusCodeException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
请求太快会超时报错,请自行处理好异常重试。
返回报文结构:
var hq_str_sh601500="通用股份,5.050,5.060,5.090,5.110,5.030,5.090,5.100,3963000,20106078.000,52800,5.090,90600,5.080,98500,5.070,105200,5.060,127900,5.050,104400,5.100,99700,5.110,111800,5.120,87500,5.130,73300,5.140,2022-02-14,11:18:56,00,"
字段说明:
var hq_str_sh601500="
0: 通用股份 //名字;
1: 5.050 //今日开盘价
2: 5.060 //昨日收盘价
3: 5.090 //当前价格
4: 5.110 //今日最高价
5: 5.030 //今日最低价
6: 5.090 //竞买价,即“买一”报价;
7: 5.100 //竞卖价,即“卖一”报价;
8: 3963000 //成交的股票数,转手乘100
9: 20106078.000//成交金额(元),转万除10000
10: 52800 //“买一”申请52800股
11: 5.090 //“买一”报价;
12: 90600 //“买二”申请90600股
13: 5.080 //“买二”报价;
14: 98500 //..
15: 5.070 //..
16: 105200 //..
17: 5.060 //..
18: 127900 //..
19: 5.050 //..
20: 104400 //“卖一”申报104400股
21: 5.100 //“卖一”报价;
22: 99700 //“卖二”申报99700股
23: 5.110 //“卖二”报价;
24: 111800 //..
25: 5.120 //..
26: 87500 //..
27: 5.130 //..
28: 73300 //..
29: 5.140 //..
30: 2022-02-14 //日期
31: 11:18:56 //时间
涨跌金额和涨跌幅度计算代码片段:
Double amt_change = getDouble(Double.valueOf(split[3]) - Double.valueOf(split[2]));//涨跌金额(元)
Double pct_change = getDouble(amt_change / Double.valueOf(split[2]) * 100);//涨跌幅度%
private static double getDouble(Double d) {
return new BigDecimal(d).setScale(2, RoundingMode.HALF_UP).doubleValue();
}
更多推荐
所有评论(0)