找回密码
 注册
关于网站域名变更的通知
查看: 643|回复: 1
打印 上一主题 下一主题

利用Matlab进行批量下载网络数据

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-1-21 10:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
matlab读取网络数据的能力和python相比太弱了,python有很多开源工具包,功能非常强大。其实以前批量下载数据都是用python语言写的,但是现在因为工作需要每天都要用matlab,所以尝试用matlab写个小程序批量下载网络数据。要下载的数据网址是:
6 s- t$ _! }# c% D4 p) G& x& w& h3 p; o& F
  Y5 m; z% I" d; Y# N0 _http://www.esrl.noaa.gov/psd/thredds/catalog/Datasets/godas/catalog.html8 l, X/ H+ f$ C* |" ~- R; X
% g  y5 z7 h5 V, _/ p' `
要下载的数据如下:pottmp.1980.nc到pottmp.2016.nc,共37个nc文件; l$ @# r" K' n( n
* l2 R3 x# H8 g: j# I
程序如下,核心函数是urlwrite  K3 V4 k& @, `1 A* ~9 P
; ?0 B/ p  Z2 a+ ~8 x) Y
filepath='D:用户目录Desktoppottmp';5 N* [' z' M- T$ Z! T
mkdir(filepath); %在桌面创建文件夹pottmp  b4 t3 E. V% m4 A
1 v1 D  y. y* I) G+ ?1 y! Q
for i=1980:2016
9 B' Y; I: Y! @5 y$ ~fullURL=['http://www.esrl.noaa.gov/psd/thredds/fileServer/Datasets/godas/pottmp.',num2str(i),'.nc'];%下载网址
" H( a9 D; O" w5 @' |filename=[filepath,'pottmp.',num2str(i),'.nc']; %保存的文件名
$ c2 g5 c7 g+ d% U4 J: Jtic;6 H+ ?5 X( n/ `  q
[f,status]=urlwrite(fullURL,filename);%下载命令
& X3 q8 a* n1 l+ E" R7 S4 R5 Vif status==1
4 s6 d8 M# T6 L# R# @: z6 H    t=toc;
$ q8 f4 n" x1 k$ u' h8 a    lst=dir(filename);/ O) Q/ t9 r2 P" E8 j; e
    xi=lst.bytes;! P& n1 e- M3 R3 r3 e
    disp(['pottmp.',num2str(i),'.nc','下载成功','文件大小为',num2str(xi/1024/1024),'M','  花费',num2str(t/60),'分钟']);! m" H9 ~( P4 p- i4 w
else1 x4 c; X! e' G- {: V7 a
    disp(['pottmp.',num2str(i),'.nc','下载失败']);
; H* T0 J/ g. I7 m8 v" kend+ S  @4 L) \$ I4 |2 k
end; [- _6 Q/ O) f( r: y0 J
$ l/ n6 I  s  z

该用户从未签到

2#
发表于 2020-1-21 17:51 | 只看该作者
利用Matlab进行批量下载网络数据
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-23 21:16 , Processed in 0.156250 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表