天天基金网可以很方便的查询某基金的历史净值:

如何将这些历史数据下载到本地,进行进一步的分析呢?

API的消费,可以使用nodejs的request工具库,代码如下:

var config = require("../config.js");

var request = require('request');

var log = require("./log.js");

function sendRequest(sRequestUrl) {

var oRequestOption = {

url: sRequestUrl,

method: "GET"

};

return new Promise(function(resolve,reject){

var requestC = request.defaults({jar: false});

log("sRequestUrl: " + sRequestUrl );

requestC(oRequestOption,function(error,response,body){

if(error){

log("Error occurred when accessing url: " + sRequestUrl);

reject(error);

}

log("response: " + body);

resolve(body);

});

});

}

module.exports = sendRequest;

我想把某基金从建立至今的历史净值全部下载,但是这个网站只提供了分页查询数据的API:

所以我编写了另一个函数:getRawDataWithHTMLFormatPerPage,输入参数是页的索引:

调用sendRequest将数据取回来之后,通过then交由parsePerDayDataFromHTMLResponse进行去噪处理:

该函数将历史日期,当天的基金单位净值,累计净值和涨跌幅从API结果中提取出来,插入一个数组中,最后返回该数组。

最后,在一个for循环里,请求每页的历史数据,将结果分别写入一个个text文件里:

text文件里的基金数据如下图所示:

下一步,我会将这些text文件合并成另一个单独的text文件,并对历史数据做进一步的分析。

ogp光学影像测量机

影像测量系统

ogp影像测量仪

ogp光学影像测量仪