上一节我们学习了如何抓取A股的股票列表,我们成功地将股票列表保存到了本地文件(或数据库)中。那么这一节,我们就来看下如何免费获取A股的历史行情数据。文末附全套代码。
一、寻找提供行情数据的网站
首先我们百度搜索一支股票的名字+行情,看下都哪些网站提供该数据。
可以看到,第一个搜索结果就是百度自家的股市通提供的数据,再往后翻还能看到东方财富、新浪财经等网站。那么我们就先看下百度股市通的数据是否好抓取。
二、分析百度股市通网页
我们点击链接进入百度股市通中的“浦发银行”行情页面,进入开发者工具(F12),点击网络选项卡。
我们要抓取的是日线数据,所以我们先点击网络选项卡中的“清除”按钮,然后在左侧网页中点击“日K”。
上节课我们提到过,XHR
类型的请求很可能会包含我们所需的数据,需要重点关注。XHR
实际上是一种异步请求,可以帮助网站实现不同资源的异步加载。像这种我们点击一下“日K”才加载出来的数据,非常适合通过这样的方式来处理。否则,对于每一次请求来说,很有可能会有大量冗余的数据请求同时触发,这对网站或者用户来说都不是很友好。