ASFHyP3 / hyp3-sdk

A python wrapper around the HyP3 API
BSD 3-Clause "New" or "Revised" License
27 stars 7 forks source link

error in asf_search.get_nearest_neighbors #133

Closed Sugeradi985 closed 3 years ago

Sugeradi985 commented 3 years ago

JSONDecodeError: Expecting value: line 3 column 3 (char 18) appeared when submitting insar jobs.

code as provided:

insar_jobs = sdk.Batch()
for reference in tqdm(granules):
    neighbors_metadata = asf_search.get_nearest_neighbors(reference, max_neighbors=2)
    for secondary_metadata in neighbors_metadata:
        insar_jobs += hyp3.submit_insar_job(reference, secondary_metadata['granuleName'], name='su_xi_chang', include_look_vectors=True, include_los_displacement=True, include_inc_map=True, looks='20x4', include_dem=True, include_wrapped_phase=True)
print(insar_jobs)

the output error information:

---------------------------------------------------------------------------
JSONDecodeError                           Traceback (most recent call last)
<ipython-input-5-76628402a99e> in <module>
      2 insar_jobs = sdk.Batch()
      3 for reference in tqdm(granules):
----> 4     neighbors_metadata = asf_search.get_nearest_neighbors(reference, max_neighbors=2)
      5     for secondary_metadata in neighbors_metadata:
      6         insar_jobs += hyp3.submit_insar_job(reference, secondary_metadata['granuleName'], name='su_xi_chang', include_look_vectors=True, include_los_displacement=True, include_inc_map=True, looks='20x4', include_dem=True, include_wrapped_phase=True)

~/miniconda3/envs/hyp3/lib/python3.9/site-packages/hyp3_sdk/asf_search.py in get_nearest_neighbors(granule, max_neighbors)
     74     response = requests.post(_SEARCH_API, params=params)
     75     _raise_for_search_status(response)
---> 76     neighbors = sorted(response.json()['results'], key=lambda x: x['startTime'], reverse=True)
     77     return neighbors[1:max_neighbors+1]
     78 

~/miniconda3/envs/hyp3/lib/python3.9/site-packages/requests/models.py in json(self, **kwargs)
    898                     # used.
    899                     pass
--> 900         return complexjson.loads(self.text, **kwargs)
    901 
    902     @property

~/miniconda3/envs/hyp3/lib/python3.9/json/__init__.py in loads(s, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, **kw)
    344             parse_int is None and parse_float is None and
    345             parse_constant is None and object_pairs_hook is None and not kw):
--> 346         return _default_decoder.decode(s)
    347     if cls is None:
    348         cls = JSONDecoder

~/miniconda3/envs/hyp3/lib/python3.9/json/decoder.py in decode(self, s, _w)
    335 
    336         """
--> 337         obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    338         end = _w(s, end).end()
    339         if end != len(s):

~/miniconda3/envs/hyp3/lib/python3.9/json/decoder.py in raw_decode(self, s, idx)
    353             obj, end = self.scan_once(s, idx)
    354         except StopIteration as err:
--> 355             raise JSONDecodeError("Expecting value", s, err.value) from None
    356         return obj, end

JSONDecodeError: Expecting value: line 3 column 3 (char 18)
Sugeradi985 commented 3 years ago

Hi, I found it caused by network connection problem.