`
bcyy
  • 浏览: 1884990 次
文章分类
社区版块
存档分类
最新评论

Matlab读取服务器数据

 
阅读更多

版权所有,转载请注明出处:http://guangboo.org/2013/05/03/matlab-retrieve-data-from-server

Matlab的工具箱中提供了Bloomberg和Yahoo等数据接口,用于提取上市公司的行情数据,其实这些接口都是通过HTTP协议通信的,并且yahoo的接口是直接从yahoo门户网站提取的,只是需要在matlab端对htm进行解析。其核心主要是使用了Matlabd的urlread函数,那么通过该函数我们也可以从网络获取各种数据。

当前很多网站特别是社交网站都提供了API,供第三方开发,并且数据格式一般都支持XML和JSON两种,因此如果在matlab下面提取这样的数据的话,就需要对XML和JSON进行解析,这里有一个JSON的解析库:http://www.mathworks.com/matlabcentral/fileexchange/23393-another-json-parser。下面我们编写一个简单的fetch函数,来从一个URL中获取数据,该数据的格式为JSON。

function output = fetch(url, varargin)
if nargin < 2
    % to do sth.
    return;
end
pattern = 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.');
    end
else
    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/techdoc/matlab_env/bq37bb3-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的数据类型。

分享到:
评论

相关推荐

    matlab读取excel数据.pdf

    MATLAB中读取Excel数据的知识点主要包括使用xlsread函数来实现数据的读取、数据导入过程中可能遇到的问题以及解决方案、Excel作为COM服务器在MATLAB中的调用、以及如何处理特定的Excel文件格式。 首先,xlsread函数...

    matlab读取excel数据.docx

    Excel 文件通常用于存储结构化的表格数据,而 MATLAB 提供了相应的函数来方便地读取这些数据。 `xlsread` 函数是 MATLAB 内置的一个工具,用于从 Excel 文件中读取数据。当你处理的 Excel 文件中的数据全为数值时,...

    MATLAB实现基于TCPIP的通信

    通过提供的MATLAB-TCPIP文件,你可以更深入地学习和实践这些概念,包括如何在MATLAB环境中编写服务器和客户端程序,以及如何处理不同类型的TCP/IP数据传输。 总结来说,MATLAB的TCP/IP通信功能强大且灵活,适用于...

    Matlab读取SQLITE数据库.zip

    总结来说,Matlab读取SQLite数据库的能力扩展了其在数据处理和分析上的应用场景。通过编译和使用提供的接口,可以方便地将SQLite数据库中的数据导入到Matlab环境中进行进一步的计算和可视化。这不仅简化了数据预处理...

    matlab读取excel.pdf

    在MATLAB中读取Excel文件是数据分析和处理过程中的常见任务,尤其是在处理大量数据时。MATLAB提供了多种函数来实现这一功能,包括`xlsread`和`xlswrite`。这两个函数主要用于读取和写入Excel文件中的数据。 `...

    利用MATLAB实时接收UDP数据包

    利用MATLAB建立ARP连接,轮询等待,实时接收、解析UDP数据包

    matlab读取txt和excel.pdf

    在MATLAB中,读取和写入数据文件是常见的任务,尤其对于文本文件(如`.txt`)和电子表格文件(如`.xls`或`.xlsx`)。以下将详细讲解MATLAB处理这两种文件的方法。 首先,我们来看如何读取和写入文本文件。MATLAB...

    关于matlab读取excel以及处理.pdf

    在MATLAB中,读取和处理Excel文件是常见的任务,特别是在数据分析和科学计算领域。Excel文件因其方便的数据存储和管理特性而广泛使用,而MATLAB则提供了强大的计算和分析工具。以下是一些关于如何在MATLAB中读取和...

    matlab开发-OPCServerClientDemo

    3. **数据交换**:通过客户端对象读取服务器上的数据,或者向服务器发送控制命令。 4. **错误处理**:在编程过程中,需要考虑网络中断、服务器未响应等异常情况,确保程序的健壮性。 项目中的"license.txt"文件可能...

    matlab开发-从SAS导入数据

    - MATLAB的SAS提交函数:MATLAB提供了`sas提交`函数,可以直接在MATLAB环境中提交SAS代码,读取Excel数据。 6. **注意事项**:导入数据时,需考虑数据类型转换、大小写敏感性、缺失值处理等问题。同时,确保MATLAB...

    基于MATLAB的网络文件数据交互的实现.pdf

    1. MATLAB在网络文件数据交互中的应用:文件中提到MATLAB可以作为一个平台,用于编写特定的.m文件(MATLAB脚本文件),实现对网络文件中数据的读取,并且可以在网页中将读取的数据展示出来。这体现了MATLAB在网络...

    matlab开发-基于图像处理的服务器系统

    在MATLAB中开发基于图像处理的服务器系统是一项技术性极强的工作,涉及到多个关键知识点,包括图像处理技术、服务器架构、编程语言应用以及可能的数据存储和传输策略。下面将详细阐述这些方面: 1. **MATLAB图像...

    matlab开发-数据模拟库

    例如,可能有用于连接DDE服务器的块、数据读取和写入块,以及错误处理块等。 在Simulink库中,DDE通信通常涉及以下关键概念: 1. **DDE服务**:提供数据的程序,通常是一个运行在后台的应用。 2. **DDE客户端**:...

    基于matlab的三维地球建模

    通过MATLAB的接口,可以读取并解析KML文件,将其中的数据集成到我们的地球模型中。 接着,"GEserver.m"、"GEcamera.m"和"GEaddKmlFeature.m"这三个脚本文件是关键的MATLAB代码。"GEserver.m"可能负责设置与Google ...

    matlab爬取火车票信息.zip

    MATLAB可以方便地读取和处理Excel文件,这在数据预处理阶段非常有用。 在MATLAB中进行网络爬虫需要注意以下几点: 1. **合法性和道德性**:确保你的爬虫行为符合网站的robots.txt文件规定,并尊重网站的数据使用...

    matlab开发-Agilent87538720VNAASCIIDataRead公司

    但可以推测,`ag8753_get_data.m`文件可能包含一个`parfor`循环,将数据读取任务分布在多个核心上执行,或者可能使用了其他并行计算技术,如`spmd`或分布式计算服务器。 `license.txt`文件通常包含软件的许可协议,...

    MATLAB和ZEMAX数据交换工具箱

    在这个工具箱中,MATLAB作为客户端,ZEMAX作为服务器,通过DDE协议,用户可以在MATLAB中控制ZEMAX,读取或写入ZEMAX的数据,进行复杂的光学分析和优化计算。 该工具箱的核心功能包括: 1. **命令发送**:用户可以...

    matlab开发-读取时间端口下载nasasrtmadatafilesgt

    在MATLAB开发中,"matlab开发-读取时间端口下载nasasrtmadatafilesgt" 这个主题涉及到的是如何利用编程语言来处理NASA的SRTM(Shuttle Radar Topography Mission)数据。SRTM是NASA进行的一项任务,它提供了全球范围...

    Matlab 的内网UDP简单通讯实现

    Matlab作为一个强大的数值计算和数据分析工具,也提供了对网络通信的支持,包括UDP协议。本教程将详细讲解如何在Matlab中实现内网UDP的简单通讯,以及如何创建一个简易的GUI界面来辅助这一过程。 首先,我们需要...

Global site tag (gtag.js) - Google Analytics