Improve error message in case the LUT file cannot be downloaded
In this case, a URLError is raised. However, the error message could be improved:
[...]
2023/03/02 12:21:26: Running atmospheric correction in 'land' mode, i.e., SICOR is applied to ALL surfaces. Uncertainty is expected for water surfaces because SICOR is designed for land only.
2023/03/02 12:21:26: Setting up forward operator...
2023/03/02 12:21:26: SICOR is applied to land AND water pixels.
2023/03/02 12:21:26: Transforming VNIR data to SWIR sensor geometry to enable first guess retrievals for liquid water and ice...
2023/03/02 12:21:28: Getting observation metadata...
2023/03/02 12:21:28: Checking if observation metadata values are within LUT value ranges...
2023/03/02 12:21:28: Loading solar irradiance model...
2023/03/02 12:21:28: Loading RT LUT...
2023/03/02 12:21:28: LUT file was not found locally. Try to download it from Git repository...
Traceback (most recent call last):
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\urllib\request.py", line 1348, in do_open
h.request(req.get_method(), req.selector, req.data, headers,
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\http\client.py", line 1282, in request
self._send_request(method, url, body, headers, encode_chunked)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\http\client.py", line 1328, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\http\client.py", line 1277, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\http\client.py", line 1037, in _send_output
self.send(msg)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\http\client.py", line 975, in send
self.connect()
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\http\client.py", line 1447, in connect
super().connect()
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\http\client.py", line 941, in connect
self.sock = self._create_connection(
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\socket.py", line 824, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\socket.py", line 955, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno 11001] getaddrinfo failed
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Daniel\mambaforge\envs\enpt_full\Scripts\enpt-script.py", line 9, in <module>
sys.exit(main())
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\site-packages\enpt\cli.py", line 227, in main
parsed_args.func(get_config(parsed_args))
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\site-packages\enpt\cli.py", line 195, in run_job
CTR.run_all_processors()
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\site-packages\enpt\execution\controller.py", line 184, in run_all_processors
self.run_atmospheric_correction()
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\site-packages\enpt\execution\controller.py", line 152, in run_atmospheric_correction
self.L1_obj.run_AC()
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\site-packages\enpt\model\images\images_sensorgeo.py", line 864, in run_AC
AC.run_ac(self)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\site-packages\enpt\processors\atmospheric_correction\atmospheric_correction.py", line 304, in run_ac
self._run_AC__land_mode(enmap_ImageL1)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\site-packages\enpt\processors\atmospheric_correction\atmospheric_correction.py", line 159, in _run_AC__land_mode
sicor_ac_enmap(enmap_l1b=enmap_ImageL1,
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\site-packages\sicor\sicor_enmap.py", line 87, in sicor_ac_enmap
fo_enmap = Fo(enmap_l1b=enmap_l1b, options=options, logger=logger)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\site-packages\sicor\AC\RtFo_3_phases.py", line 641, in __init__
self.fn_table = download_LUT(path_LUT_default=self.path_LUT_default)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\site-packages\sicor\Tools\EnMAP\LUT.py", line 71, in download_LUT
urllib.request.urlretrieve(fname, path_LUT_default)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\urllib\request.py", line 241, in urlretrieve
with contextlib.closing(urlopen(url, data)) as fp:
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\urllib\request.py", line 216, in urlopen
return opener.open(url, data, timeout)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\urllib\request.py", line 519, in open
response = self._open(req, data)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\urllib\request.py", line 536, in _open
result = self._call_chain(self.handle_open, protocol, protocol +
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\urllib\request.py", line 496, in _call_chain
result = func(*args)
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\urllib\request.py", line 1391, in https_open
return self.do_open(http.client.HTTPSConnection, req,
File "C:\Users\Daniel\mambaforge\envs\enpt_full\lib\urllib\request.py", line 1351, in do_open
raise URLError(err)
urllib.error.URLError: <urlopen error [Errno 11001] getaddrinfo failed>