bounds = [-119.085, 33.402, -118.984, 35.435]
X, p = stitch_dem(bounds,
dem_name='glo_30',
dst_ellipsoidal_height=False,
dst_area_or_point='Point')
---------------------------------------------------------------------------
CPLE_HttpResponseError Traceback (most recent call last)
File rasterio/_base.pyx:261, in rasterio._base.DatasetBase.__init__()
File rasterio/_shim.pyx:78, in rasterio._shim.open_dataset()
File rasterio/_err.pyx:216, in rasterio._err.exc_wrap_pointer()
CPLE_HttpResponseError: HTTP response code: 404
During handling of the above exception, another exception occurred:
RasterioIOError Traceback (most recent call last)
Input In [22], in <cell line: 2>()
1 bounds = [-119.085, 33.402, -118.984, 35.435]
----> 2 X, p = stitch_dem(bounds,
3 dem_name='glo_30',
4 dst_ellipsoidal_height=False,
5 dst_area_or_point='Point')
File ~/opt/anaconda3/envs/dem-stitcher/lib/python3.9/site-packages/dem_stitcher/stitcher.py:304, in stitch_dem(bounds, dem_name, dst_ellipsoidal_height, dst_area_or_point, dst_resolution, n_threads_reproj, n_threads_downloading, driver, fill_in_glo_30)
302 return RASTER_READERS[dem_name](url)
303 with ThreadPoolExecutor(max_workers=n_threads_downloading) as executor:
--> 304 results = list(tqdm(executor.map(reader, urls),
305 total=len(urls),
306 desc=f'Reading {dem_name} Datasets'))
308 # If datasets are non-existent, returns None
309 datasets = list(filter(lambda x: x is not None, results))
File ~/opt/anaconda3/envs/dem-stitcher/lib/python3.9/site-packages/tqdm/std.py:1195, in tqdm.__iter__(self)
1192 time = self._time
1194 try:
-> 1195 for obj in iterable:
1196 yield obj
1197 # Update and possibly print the progressbar.
1198 # Note: does not call self.update(1) for speed optimisation.
File ~/opt/anaconda3/envs/dem-stitcher/lib/python3.9/concurrent/futures/_base.py:609, in Executor.map.<locals>.result_iterator()
606 while fs:
607 # Careful not to keep a reference to the popped future
608 if timeout is None:
--> 609 yield fs.pop().result()
610 else:
611 yield fs.pop().result(end_time - time.monotonic())
File ~/opt/anaconda3/envs/dem-stitcher/lib/python3.9/concurrent/futures/_base.py:446, in Future.result(self, timeout)
444 raise CancelledError()
445 elif self._state == FINISHED:
--> 446 return self.__get_result()
447 else:
448 raise TimeoutError()
File ~/opt/anaconda3/envs/dem-stitcher/lib/python3.9/concurrent/futures/_base.py:391, in Future.__get_result(self)
389 if self._exception:
390 try:
--> 391 raise self._exception
392 finally:
393 # Break a reference cycle with the exception in self._exception
394 self = None
File ~/opt/anaconda3/envs/dem-stitcher/lib/python3.9/concurrent/futures/thread.py:58, in _WorkItem.run(self)
55 return
57 try:
---> 58 result = self.fn(*self.args, **self.kwargs)
59 except BaseException as exc:
60 self.future.set_exception(exc)
File ~/opt/anaconda3/envs/dem-stitcher/lib/python3.9/site-packages/dem_stitcher/stitcher.py:302, in stitch_dem.<locals>.reader(url)
301 def reader(url):
--> 302 return RASTER_READERS[dem_name](url)
File ~/opt/anaconda3/envs/dem-stitcher/lib/python3.9/site-packages/dem_stitcher/dem_readers.py:12, in read_dem(dem_path)
11 def read_dem(dem_path: str) -> rasterio.DatasetReader:
---> 12 ds = rasterio.open(dem_path)
13 return ds
File ~/opt/anaconda3/envs/dem-stitcher/lib/python3.9/site-packages/rasterio/env.py:437, in ensure_env_with_credentials.<locals>.wrapper(*args, **kwds)
434 session = DummySession()
436 with env_ctor(session=session):
--> 437 return f(*args, **kwds)
File ~/opt/anaconda3/envs/dem-stitcher/lib/python3.9/site-packages/rasterio/__init__.py:220, in open(fp, mode, driver, width, height, count, crs, transform, dtype, nodata, sharing, **kwargs)
216 # Create dataset instances and pass the given env, which will
217 # be taken over by the dataset's context manager if it is not
218 # None.
219 if mode == 'r':
--> 220 s = DatasetReader(path, driver=driver, sharing=sharing, **kwargs)
221 elif mode == "r+":
222 s = get_writer_for_path(path, driver=driver)(
223 path, mode, driver=driver, sharing=sharing, **kwargs
224 )
File rasterio/_base.pyx:263, in rasterio._base.DatasetBase.__init__()
RasterioIOError: HTTP response code: 404
The bug
The example on the github homepage does not work due to removal of
2021prefix in glo-30 aws bucket.To Reproduce