分享

处理XML实例

 gblhp 2015-02-16

除非注明,文章均为 战战如疯 原创,转载请保留链接: http://www./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,其它和之前讲过的课程是一样的。把股票代码换一下就可以取其他的股票了,加个循环就是所有股票历史数据,我这里就不演示了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多