Matlab讀取伺服器資料

2021-08-27 12:05:18 字數 1261 閱讀 8376

matlab的工具箱中提供了bloomberg和yahoo等資料介面,用於提取上市公司的**資料,其實這些介面都是通過http協議通訊的,並且yahoo的介面是直接從yahoo門戶**提取的,只是需要在matlab端對htm進行解析。其核心主要是使用了matlabd的urlread函式,那麼通過該函式我們也可以從網路獲取各種資料。

當前很多**特別是社交**都提供了api,供第三方開發,並且資料格式一般都支援xml和json兩種,因此如果在matlab下面提取這樣的資料的話,就需要對xml和json進行解析,這裡有乙個json的解析庫:下面我們編寫乙個簡單的fetch函式,來從乙個url中獲取資料,該資料的格式為json。

function output = fetch(url, varargin)

if nargin < 2

% to do sth.

return;

endpattern = varargin;

if ~ischar(pattern)

error('***x:invalidparameter', 'the parameter pattern must be str.');

end[json, status] = urlread(url, 'get', );

if status == 1

tryoutput = parse_json(json);

catch exception

error('***x: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 ']);

end

主要**就是:

[json, status] = urlread(url, 'get', );
urlencode是對url中的非ascii嗎字元進行編碼。json為返回的json資料,status表示請求的結果狀態,當status為1時表示獲取資料成功,然後通過:

output = parse_json(json);
來將json格式轉換成matlab的資料型別。

Matlab讀取伺服器資料

matlab的工具箱中提供了bloomberg和yahoo等資料介面,用於提取上市公司的 資料,其實這些介面都是通過http協議通訊的,並且yahoo的介面是直接從yahoo門戶 提取的,只是需要在matlab端對htm進行解析。其核心主要是使用了matlabd的urlread函式,那麼通過該函式我...

Java Socket 讀取伺服器端返回資料

客戶端 1 建立客戶端socket,指定伺服器位址和埠 socket socket newsocket localhost 10086 2 獲取輸出流,向伺服器端傳送資訊 outputstream os socket.getoutputstream 位元組輸出流 printwriter pw new...

jsonp從伺服器讀取資料並且予以顯示

之前看了許多的關於jsonp的文章,大多是講的比較的模糊的,下面是我的個人的理解!基於這樣的一段 做下解釋 這是在jsonp中讀取資料的時候 取出來當然是json的格式json格式不清楚的,可以訪問我的json和jsonp的文章 利用迴圈進行資料的讀取。先定義變數html,然後迴圈取出!其實核心就是...