@@ -51,13 +51,13 @@ class HadGHCNDProcessor(GeoDataMosaicProcessor):
5151 base_url = "http://www.metoffice.gov.uk/hadobs/hadghcnd/data/"
5252
5353 layers = {
54- # 'HadGHCND_TXTN_anoms_1950-2014_15052015.nc.tgz': {
55- # 'title': 'HadGHCND Temperature Anomalies - {measure}, {interval} ',
56- # 'name': '{prefix}_anomalies_{measure}_{interval }'
57- # },
54+ 'HadGHCND_TXTN_anoms_1950-2014_15052015.nc.tgz' : {
55+ 'title' : 'HadGHCND Temperature Anomalies - {measure}, 1950-2014 ' ,
56+ 'name' : '{prefix}_anomalies_{measure}'
57+ },
5858 'HadGHCND_TXTN_acts_1950-2014_15102015.nc.tgz' : {
59- 'title' : 'HadGHCND Actual Temperatures - {measure}, {interval} ' ,
60- 'name' : '{prefix}_temperatures_{measure}_{interval} '
59+ 'title' : 'HadGHCND Actual Temperatures - {measure}, 1950-2014 ' ,
60+ 'name' : '{prefix}_temperatures_{measure}'
6161 }
6262
6363 }
@@ -148,7 +148,8 @@ def run(self):
148148 """
149149 for key in self .layers .keys ():
150150 src = os .path .join (self .base_url , key )
151- cdf_files = untar (src , self .tmp_dir )
151+ tarfile = self .download (src )
152+ cdf_files = untar (os .path .join (self .tmp_dir , tarfile ), self .tmp_dir )
152153 for cdf in cdf_files :
153154 interval = re .findall ('\d{4}-\d{4}' ,
154155 os .path .basename (cdf ))[0 ]
@@ -157,11 +158,11 @@ def run(self):
157158 ncds = gdal .Open (ncds_gdal_name )
158159 bands = ncds .RasterCount
159160 layer_name = self .layers [key ]['name' ].format (
160- prefix = self .prefix , measure = measure , interval = interval
161+ prefix = self .prefix , measure = measure
161162 )
162163 img_list = self .get_mosaic_filenames (layer_name )
163164 files = []
164- for band in range (1 , bands + 1 ):
165+ for band in range (1 , min ( 11 , bands + 1 ) ):
165166 days = int (ncds .GetRasterBand (band )
166167 .GetMetadata ()['NETCDF_DIM_time' ])
167168 band_date = re .sub ('[\-\.]+' , '' ,
@@ -193,9 +194,7 @@ def run(self):
193194 self .set_default_style (layer_name ,
194195 layer_name ,
195196 sld .read ())
196- title = self .layers [key ]['title' ].format (
197- measure = measure , interval = interval
198- )
197+ title = self .layers [key ]['title' ].format (measure = measure )
199198 self .update_geonode (layer_name ,
200199 title = title ,
201200 description = self .abstract .format (src ),
@@ -204,7 +203,7 @@ def run(self):
204203 '-90.0' , '90.0' ,
205204 'EPSG:4326' ))
206205 self .truncate_gs_cache (layer_name )
207- self .cleanup ()
206+ self .cleanup ()
208207
209208
210209if __name__ == '__main__' :
0 commit comments