How to download multiple data files at once using matlab
6 ビュー (過去 30 日間)
古いコメントを表示
I need to call on a website and download data for each and every day for the month of july. Im curious what command or format can help me do this. For example this is the code to retrieve 1 day of the year.
filename='weather_data_2019_255.txt';
if isfile(filename)
fprintf('already have the file |%s|\n',filename);
else
url='http://www.weather.unh.edu/data/2019/255.txt';
outname=websave(filename,url);
fprintf('got weather data file |%s|\n',outname);
end
How can i change the filename to allow me to download filename='weather_data_2019_(182-212).txt. I'm assuming I need to create a start date and a end date and create an output filename. May someone teach me how I can do this. Thank you very much.
0 件のコメント
採用された回答
meghannmarie
2019 年 10 月 1 日
Try this. I also put where you could change year also.
year = 2019;
start_jd = 182;
end_jd = 212;
for jd = start_jd:end_jd
filename=['weather_data_' num2str(year) '_' num2str(jd) '.txt'];
if isfile(filename)
fprintf('already have the file |%s|\n',filename);
else
url=['http://www.weather.unh.edu/data/' num2str(year) '/' num2str(jd) '.txt'];
outname=websave(filename,url);
fprintf('got weather data file |%s|\n',outname);
end
end
3 件のコメント
meghannmarie
2020 年 3 月 31 日
Is the start_cd and end_cd just the calendar day? If so, I would calculate the calender day from the julian day.
year = 2018;
month = 10;
time = 0900;
start_jd = 279;
end_jd = 289;
for jd = start_jd:end_jd
cd = day(datetime((year-1),12,31) + days(jd));
filename = ['https://podaac-tools.jpl.nasa.gov/drive/files/allData/ghrsst/data/GDS2/L4/GLOB/JPL/MUR/v4.1/' num2str(year) '/' num2str(jd) '/' num2str(year) num2str(month) num2str(cd) num2str(time) '-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc']
if isfile(filename)
fprintf('already have the file |%s|\n',filename);
else
url=['https://podaac-tools.jpl.nasa.gov/drive/files/allData/ghrsst/data/GDS2/L4/GLOB/JPL/MUR/v4.1/' num2str(year) '/' num2str(jd) '/' num2str(year) num2str(month) num2str(cd) num2str(time) '-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc'];
outname=websave(filename,url);
fprintf('got weather data file |%s|\n',outname);
end
end
Belinda Finlay
2020 年 4 月 2 日
Meghannmarie, thanks, that was a massive help.
I have all that working well; however, the data I am trying to gather is a file on a webpage, rather than a pages with data on it. When you access the webpage manually you have to click on the file to commence the download, hence when I use the code above it create a file with a html link, rather than downloading the file. Is there something you can recommend to correct this?
This the screen shot of the file I am trying to grab: (its the.nc file I am trying to download.) from herehttps://podaac-tools.jpl.nasa.gov/drive/files/allData/ghrsst/data/GDS2/L4/GLOB/JPL/MUR/v4.1/2018/279
my code is:
options = weboptions('Username', 'insertusername', 'Password', 'insertpassword');
year = 2018;
month = 10;
time = 0900;
start_jd = 279;
end_jd = 289;
for jd = start_jd:end_jd
cd = day(datetime((year-1),12,31) + days(jd));
filename = ['sst' num2str(year) '_' num2str(jd) '.nc'];
if isfile(filename)
fprintf('already have the file |%s|\n',filename);
else
url=['https://podaac-tools.jpl.nasa.gov/drive/files/allData/ghrsst/data/GDS2/L4/GLOB/JPL/MUR/v4.1/' num2str(year) '/' num2str(jd)];
outname=websave(filename,url,options);
fprintf('got weather data file |%s|\n',outname);
end
end
This the screen shot of the file I am trying to grab: (its the.nc file I am trying to download.) from herehttps://podaac-tools.jpl.nasa.gov/drive/files/allData/ghrsst/data/GDS2/L4/GLOB/JPL/MUR/v4.1/2018/279
その他の回答 (1 件)
参考
カテゴリ
Help Center および File Exchange で Downloads についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!