- 积分
- 26283
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2012-6-1
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
转载自:- http://www.ilovematlab.cn/thread-122392-1-1.html
复制代码
前几天美国数学建模成绩出了,我们按照网址下载了自己的证书,另外想看看学校今年的获奖情况,由于学校的参赛队伍数众多,一个一个下载证书再统计显得麻烦,于是想自己用matlab开发一个小程序以实现同类型文件的批量下载。很多网站上有介绍使用Windows API 函数URLDownloadToFile,但是这个在VC上实现容易,要把它移植到matlab上还得使用MEX,有点麻烦了。这几天一直徘徊个大小网站,没有找到相关信息。最后还是自己使用lookfor找到需要的函UrlWrite,调用这个函数轻松搞定批量下载!
以下是代码:
%使用matlab下载网站上的文件
%使用urlwrite函数下载网站上的文件
%特别适用于批量下载同类型的文件
% Created by longwen36 2011-4-16
%使用urlwrite实现批量下载
%以下载2011美赛数模证书为例
clc,clear;
num = 11701:11710;
URLs = cell(size(num));
folder_filenames = cell(size(num));
filenames = cell(size(num));
for idx = 1:length(num);
URLs{idx} = sprintf('http://www.comap-math.com/mcm/2011Certs/%d.pdf',num(idx));
filenames{idx} = sprintf('%d.pdf',num(idx));
end
tic;
for idx = 1:length(num);
fprintf(1,'正在下载%s...\n',filenames{idx});
[f, status] = urlwrite(URLs{idx},filenames{idx});
if status == 1;
fprintf(1,'%s成功下载!\n',filenames{idx});
else
fprintf(1,'%s下载失败!\n',filenames{idx});
end
end
etime = toc;
fprintf('总下载文件数:%d,总耗时:%fs\n',length(num),etime);
MatlabUrlDownloadToFile.m
(1.32 KB, 下载次数: 8, 售价: 5 贡献)
|
|