Embed current date into URL (matlab)
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I want to download a file from the following link: https://nomads.ncep.noaa.gov/cgi-bin/filter_gfs_0p25_1hr.pl?file=gfs.t06z.pgrb2.0p25.f039&lev_surface=on&var_CAPE=on&leftlon=0&rightlon=360&toplat=90&bottomlat=-90&dir=%2Fgfs.2019060206
How can I embded the current date, run time and forecast hour in the URL after predefining them? I have tried the following but it doesn't work:
myrun = 00; % 00 06 12 18
mydate = 20190603; % yearmonthday
myforecasthour = 039; % t + number of hours ahead
fullURL=['https://nomads.ncep.noaa.gov/cgi-bin/filter_gfs_0p25_1hr.pl?file=gfs.t',num2str(myrun,'%02.f'),'z.pgrb2.0p25.f',num2str(myforecasthour,'%03.f'),'&lev_surface=on&var_CAPE=on&leftlon=0&rightlon=360&toplat=90&bottomlat=-90&dir=%2Fgfs.',num2str(mydate)'];
filename = 'cape_test';
urlwrite(fullURL,filename);
1 Kommentar
Walter Roberson
am 12 Nov. 2024 um 3:52
Verschoben: Walter Roberson
am 12 Nov. 2024 um 3:52
The above code, as-posted, fails with "Dimensions of arrays being concatenated are not consistent.". That is because you have
fullURL=[STUFF,num2str(mydate)']
The trailing ' transposes the num2str() result, generating a column vector. You do not want that trailing ' there.
Antworten (1)
Udit06
am 12 Nov. 2024 um 3:18
Verschoben: Walter Roberson
am 12 Nov. 2024 um 3:53
Hi Yoni,
If I run the code that you have given, I am getting the error as shown below:
myrun = 00; % 00 06 12 18
mydate = 20190603; % yearmonthday
myforecasthour = 039; % t + number of hours ahead
fullURL=['https://nomads.ncep.noaa.gov/cgi-bin/filter_gfs_0p25_1hr.pl?file=gfs.t',num2str(myrun,'%02.f'),'z.pgrb2.0p25.f',num2str(myforecasthour,'%03.f'),'&lev_surface=on&var_CAPE=on&leftlon=0&rightlon=360&toplat=90&bottomlat=-90&dir=%2Fgfs.',num2str(mydate)'];
Since the variables myrun, mydate, myforecasthour are of integer type. You can replace %f with %d which will also allow you to add leading zeros.
fullURL = ['https://nomads.ncep.noaa.gov/cgi-bin/filter_gfs_0p25_1hr.pl?', ...
'file=gfs.t', num2str(myrun, '%02d'), 'z.pgrb2.0p25.f', num2str(myforecasthour, '%03d'), ...
'&lev_surface=on&var_CAPE=on&leftlon=0&rightlon=360&toplat=90&bottomlat=-90&dir=%2Fgfs.', num2str(mydate)]
I hope this helps.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Downloads finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!