齐鲁财经 股票数据网(股票查询网站)

股票数据网(股票查询网站)

股票数据网(股票查询网站)【分享成果,随喜正能量】学会宽容,严以律己,宽以待人。对自己,不要太放纵,对别人,不要太苛刻。人与人之间都是相互的,如果你自己做不到,就没有理由去过分要求别人。在努力做好自己的同时,学会给别人多一些宽容,世界会因此变得更加温暖。。《VBA信息获取与处理》教程是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪贴板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形

股票数据网(股票查询网站)

【分享成果,随喜正能量】学会宽容,严以律己,宽以待人。对自己,不要太放纵,对别人,不要太苛刻。人与人之间都是相互的,如果你自己做不到,就没有理由去过分要求别人。在努力做好自己的同时,学会给别人多一些宽容,世界会因此变得更加温暖。。

《VBA信息获取与处理》教程是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪贴板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。程序文件通过32位和64位两种OFFICE系统测试。是非常抽象的,更具研究的价值。教程共两册,八十四讲。今日的内容是专题六“VBA中利用XMLHTTP完成网抓数据”的第7讲:VBA网抓股票历史数据

第七节 利用XMLHTTP抓取网易财经股票历史数据

大家好,我们继续网抓数据的讲解,这讲的内容更为实用,我们讲解某支股票历史数据的抓取,对于玩股票的朋友而言,股票的信息有开盘价、最高价、最低价、收盘价、涨跌额、涨跌幅(%)、成交量(手)、成交金额(万元)、振幅(%)、换手率(%),因人而异关注点也是不同的,有人关注资金的流入和流出,有的人关注换手率的多少,当无论你关注什么数据,都希望这些数据不是停留在看板上,而是在我们的EXCEL表格中,然后进行有的放矢的分析。如何把这些数据从网页上抓取处理呢?

实现场景:从网页的数据中提取给定股票的信息到EXCEL表格中,这些信息包括某一段时间的开盘价、最高价、最低价、收盘价、涨跌额、涨跌幅(%)、成交量(手)、成交金额(万元)、振幅(%)、换手率(%)。如下图,要提取出“601899”股票的20年第二季度的数据。

1 应用XMLHTTP实现网抓股票数据的思路分析

我们首先仍是建立应用CreateObject("MSXML2.XMLHTTP")和CreateObject("htmlfile")第二个应用用于处理提取出来的网页数据,然后我们在“网易财经”的网址上抓取数据

网易财经”的网址:http://quotes.money.163.com/trade/lsjysj_" & 股票名称。

抓取时利用 .Open "GET", strURL, False 及 .send 的命令,数据返回时将.responseText赋给第二个引用innerHTML属性。innerHTML 属性返回表格行的开始和结束标签之间的 HTML。

提取完数据后我们利用循环语句来提取数据。

在循环语句中我们要有行和列的区分,逐一提取行列的数据。在网页表格处理的时候,我们可以利用遍历的方法。可以用类似于工作表的行:Rows,单元格:Cells 的表述方案。

最后要记得内存的释放。

2 应用XMLHTTP实现网抓股票数据的代码实现

下面我们看实现上述思路的代码部分,我直接给出了我的代码:

Sub myNZE() '网易财经股票历史数据的抓取

[代码见教程]

End Sub

代码截图:

代码解读:

1) Set objXMLHTTP = CreateObject("MSXML2.XMLHTTP")

Set objDOM = CreateObject("htmlfile")

上述代码建立了两个引用。

2) GPCode = Cells(1, 4).Value

GPY = Cells(2, 4).Value

GPJ = Cells(3, 4).Value

上述代码提取股票的名称,历史数据的年,季度。

3) strURL = "http://quotes.money.163.com/trade/lsjysj_" & GPCode

strURL = strURL & ".html?year=" & GPY

strURL = strURL & "&season=" & GPJ

建立网址的代码。

4)With objXMLHTTP

.Open "GET", strURL, False

.send

objDOM.body.innerHTML = .responseText

End With

上述代码从网页中提取数据,并将数据赋值给objDOM.body.innerHTML ,objDOM是我们建立的第二个引用对象。

5)For Each objTR In objTable.Rows

HRow = HRow + 1

LCol = 0

For Each objCell In objTR.Cells

LCol = LCol + 1

Cells(HRow + 4, LCol) = objCell.innerText

Next objCell

Next

上述代码是从("TABLE")(3)中提取数据到工作表中。

6) Set objXMLHTTP = Nothing

Set objDOM = Nothing

Set objTable = Nothing

Set objTR = Nothing

Set objCell = Nothing

上述代码是释放内存。

3 应用XMLHTTP实现网抓股票数据的实现效果

最后,我们点击运行按钮,看看随后的实现效果:

将这种数据提取到工作表中后,我们就可以做数据分析处理了。确实,我们在股票分析的时候也非常需要这种数据的提取。

本节知识点回向:

如何提取网页股票的历史数据到工作表中?这种方案和之前的哪节知识点类似?

本讲参考程序文件:006工作表.XLSM

我20多年的VBA实践经验,全部浓缩在下面的各个教程中,教程学习顺序:

【分享成果,随喜正能量】:学会高傲,任何时候,都不要妄自菲薄。你要知道,世界不会放弃你,只有你会放弃自己。每一个女人都要适当保持高傲,这并不是过分看高自己,而是给自己一份自信和勇气。毕竟,这个世界,对女人来说,总还是有点不够温柔。

本文来自网络,不代表齐鲁财经立场,转载请注明出处:http://oginku.com.cn/1396.html

作者: [db:作者]

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

联系我们

联系我们

0898-88881688

在线咨询: QQ交谈

邮箱: email@wangzhan.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部