登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
Matlab的工具箱中提供了Bloomberg和Yahoo等数据接口,用于提取上市公司的行情数据,其实这些接口都是通过HTTP协议通信的,并且yahoo的接口是直接从yahoo门户网站提取的,只是需要在matlab端对htm进行解析。其核心主要是使用了Matlabd的urlread函数,那么通过该函数我们也可以从网络获取各种数据。 function output = fetch(url, varargin)if nargin < 2 % to do sth. return;endpattern = varargin{1};if ~ischar(pattern) error('XXXX:InvalidParameter', 'The parameter pattern must be str.');end[json, status] = urlread(url, 'get', {'key', urlencode(pattern)});if status == 1 try output = parse_json(json); catch exception error('XXXX:InvalidJson', 'Request succussfuly! but the result is not valid json string.'); endelse error(['Cant connect the site "' url ... '", or connect timeout. If you connect internet with proxy, you should set the proxy server manually, see alse http://www.mathworks.cn/help/tec ... b3-1.html#bq37bb3-3]);end主要代码就是: [json, status] = urlread(url, 'get', {'key', urlencode(pattern)});urlencode是对URL中的非ASCII吗字符进行编码。json为返回的JSON数据,status表示请求的结果状态,当status为1时表示获取数据成功,然后通过: output = parse_json(json);来将JSON格式转换成Matlab的数据类型。
|