轉載請注明出處:http://m.tkk7.com/zh-weir/archive/2012/03/01/371105.html
新浪股票接口AndroidSDK
昨天想到一個點子,需要訪問股票行情。于是在網上搜了一下免費的股市行情的接口。發現新浪股票的數據接口比較穩定,于是就用它了。
網上對于新浪股票的數據接口介紹比較詳細,并且實現也很簡單,所以花了一下午就基本完成了。想到大家開發Android應用可能也會需要訪問股市行情,特此將資料整理在此,并附上Javadoc文檔和一個小Demo,以便后來人開發更為便捷。
一、接口介紹:
1、行情接口:
以大秦鐵路(股票代碼:601006)為例,如果要獲取它的最新行情,只需訪問新浪的股票數據
接口:http://hq.sinajs.cn/list=sh601006 這個url會返回一串文本,例如:
var hq_str_sh601006="大秦鐵路, 27.55, 27.25, 26.91, 27.55, 26.20, 26.91, 26.92,22114263, 589824680, 4695, 26.91, 57590, 26.90, 14700, 26.89, 14300,26.88, 15100, 26.87, 3100, 26.92, 8900, 26.93, 14230, 26.94, 25150, 26.95, 15220, 26.96, 2008-01-11, 15:05:32";
這個字符串由許多數據拼接在一起,不同含義的數據用逗號隔開了,按照程序員的思路,順序號從0開始。
0:”大秦鐵路”,股票名字;
1:”27.55″,今日開盤價;
2:”27.25″,昨日收盤價;
3:”26.91″,當前價格;
4:”27.55″,今日最高價;
5:”26.20″,今日最低價;
6:”26.91″,競買價,即“買一”報價;
7:”26.92″,競賣價,即“賣一”報價;
8:”22114263″,成交的股票數,由于股票交易以一百股為基本單位,所以在使用時,通常把該值除以一百;
9:”589824680″,成交金額,單位為“元”,為了一目了然,通常以“萬元”為成交金額的單位,所以通常把該值除以一萬;
10:”4695″,“買一”申請4695股,即47手;
11:”26.91″,“買一”報價;
12:”57590″,“買二”
13:”26.90″,“買二”
14:”14700″,“買三”
15:”26.89″,“買三”
16:”14300″,“買四”
17:”26.88″,“買四”
18:”15100″,“買五”
19:”26.87″,“買五”
20:”3100″,“賣一”申報3100股,即31手;
21:”26.92″,“賣一”報價
(22, 23), (24, 25), (26,27), (28, 29)分別為“賣二”至“賣四的情況”
30:”2008-01-11″,日期;
31:”15:05:32″,時間;
如果你要同時查詢多個股票,那么在URL最后加上一個逗號,再加上股票代碼就可以了;比如你要一次查詢大秦鐵路(601006)和大同煤業(601001)的行情,就這樣使用URL:
http://hq.sinajs.cn/list=sh601003,sh601001
2、圖形接口:
對于股票的K線圖,日線圖等的獲取可以通過請求http://image.sinajs.cn/…./…/*.gif此URL獲取,其中*代表股票代碼,詳見如下:
查看日K線圖:
http://image.sinajs.cn/newchart/daily/n/sh601006.gif
分時線的查詢:
http://image.sinajs.cn/newchart/min/n/sh000001.gif
日K線查詢:
http://image.sinajs.cn/newchart/daily/n/sh000001.gif
周K線查詢:
http://image.sinajs.cn/newchart/weekly/n/sh000001.gif
月K線查詢:
http://image.sinajs.cn/newchart/monthly/n/sh000001.gif
二、新浪股票Android SDK基本介紹:
通過上面的介紹,大家可以知道,新浪股票的接口非常簡單。缺點是沒有任何文檔,也就是說未來可能在沒有任何通知的情況下進行改變。但是這么多年從未變過,所以想來也不用擔心。
新浪股票Android SDK的基本思路就是通過HTTP協議GET方法,獲取到股票數據然后進行解析。網絡鏈接我使用的是Apache的commons-httpclient。如果大家對使用http協議或者httpclient的使用有疑問,可以參看我的另一篇博文《Android之基于HTTP協議的下載》,或者在網上查找相關資料。
SDK中核心的類就兩個,SinaStockClient和SinaStockInfo。前者封裝了訪問股票行情的接口,后者對返回的數據進行解析和封裝。
具體Javadoc文檔和Demo下載地址如下:
Javadoc文檔
Android演示demo(含SDK)
參考資料:
Sina股票數據接口
轉載請注明出處:http://m.tkk7.com/zh-weir/archive/2012/03/01/371105.html