新浪的股票的數(shù)據(jù)接口怎么讀取 新浪提供的接口是 新浪的股票數(shù)據(jù)接口:http://hq./list=********** ********** 為股票代碼 如:sh600000,sz000913 (這里sh是上海股市,sz為深圳股市) http://hq./list=sh600000 http://hq./list=sz000913 訪問: http://hq./list=sh601006 返回 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"; 這個(gè)字符串由許多數(shù)據(jù)拼接在一起,不同含義的數(shù)據(jù)用逗號(hào)隔開了,按照程序員的思路,順序號(hào)從0開始。 0:”大秦鐵路”,股票名字; 1:”27.55″,今日開盤價(jià); 2:”27.25″,昨日收盤價(jià); 3:”26.91″,當(dāng)前價(jià)格; 4:”27.55″,今日最高價(jià); 5:”26.20″,今日最低價(jià); 6:”26.91″,競買價(jià),即“買一”報(bào)價(jià); 7:”26.92″,競賣價(jià),即“賣一”報(bào)價(jià); 8:”22114263″,成交的股票數(shù),由于股票交易以一百股為基本單位,通常把該值除以一百; 9:”589824680″,成交金額,單位為“元”,通常以“萬元”為成交金額的單位,所以通常把該值除以一萬; 10:”4695″,“買一”申請4695股,即47手; 11:”26.91″,“買一”報(bào)價(jià); 12:”57590″,“買二” 13:”26.90″,“買二” 14:”14700″,“買三” 15:”26.89″,“買三” 16:”14300″,“買四” 17:”26.88″,“買四” 18:”15100″,“買五” 19:”26.87″,“買五” 20:”3100″,“賣一”申報(bào)3100股,即31手; 21:”26.92″,“賣一”報(bào)價(jià) (22, 23), (24, 25), (26,27), (28, 29)分別為“賣二”至“賣五的情況” 30:”2008-01-11″,日期; 31:”15:05:32″,時(shí)間; while 1 Local $hDownload = InetGet("http://hq./list=sh600000", "sh600000.txt", 1, 1) InetClose($hDownload) $file = FileOpen("sh600000.txt", 0) ; Check if file opened for reading OK If $file = -1 Then MsgBox(0, "Error", "Unable to open file. a time until the EOF is reached") EndIf While 1 $chars = FileRead($file) If @error = -1 Then ExitLoop $aArray = StringTrimLeft($chars,21) $aArray = StringTrimRight($aArray,7) $aArray = StringSplit($aArray,",") TrayTip($aArray[1], "最新股價(jià)" & $aArray[4], 10, 1) sleep(2500) Wend FileClose($file) WEnd 謝謝,原來是下載成txt文件,有沒有不下載,直接取得字符串再進(jìn)行數(shù)組處理的辦法? While 1 Local $HTML = BinaryToString(InetRead('http://hq./list=sh600000')) $aArray = StringSplit($HTML, ',') ToolTip('當(dāng)前價(jià): ' & $aArray[4] & ' | 漲跌幅: ' & Round($aArray[4] - $aArray[3], 2), 0, 0, '浦發(fā)銀行', 1) Sleep(3000) WEnd
|
|