處理XML實例-股票歷史數據下載

處理XML實例-股票歷史數據下載

時間 : 14-11-16 欄目 : 網頁採集 作者 : 戰戰如瘋 評論 : 0 點擊 : 2,217 次

除非註明,文章均爲 戰戰如瘋 原創,轉載請保留鏈接:http://www.zhanzhanrufeng.com/cat3/555.html,VBA交流羣273624828。

這節再來看個XML格式數據的網抓實例。要抓取的網頁是http://biz.finance.sina.com.cn/stock/flash_hq/kline_data.php?symbol=sz000001&end_date=20141116&begin_date=19910102,是股票sz000001平安銀行的歷史交易數據,在IE下打開可以看到該網頁是一個XML格式的網頁,它每行是一個節點,列之間是不分節點的。

Private Sub GetData1()
Dim tt As String, winhttp, t1, arr, i, v, objDOM, j, ns, n
Set winhttp = CreateObject("Microsoft.XMLHTTP")
With winhttp
.Open "GET", "http://biz.finance.sina.com.cn/stock/flash_hq/kline_data.php?symbol=sz000001&end_date=20141116&begin_date=19910102", False
.send
t1 = .responsetext
End With
Set objDOM = CreateObject("MSXML.DOMDocument")
objDOM.LoadXML (t1)
objDOM.async = False
Set ns = objDOM.SelectNodes("//content")
Set n = objDOM.SelectSingleNode("//content")
For i = 1 To ns.Length
For j = 1 To n.Attributes.Length
Cells(i, j) = ns.Item(i - 1).Attributes(j - 1).Text
Next
Next
Set objDOM = Nothing
End Sub

列長度用的是n.attributes.length,其它和之前講過的課程是一樣的。把股票代碼換一下就可以取其他的股票了,加個循環就是所有股票歷史數據,我這裏就不演示了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章