Update reverse_geocode_py to fallback base on more field

Don't exit with error so we don't stop the cron process
This commit is contained in:
xbgmsharp
2023-02-07 11:18:25 +01:00
parent 6a0c15d23c
commit d745048a9c

View File

@@ -51,14 +51,26 @@ AS $reverse_geocode_py$
r_dict = r.json()
if r_dict["name"]:
return r_dict["name"]
elif "address" in r_dict and r_dict["address"] and r_dict["address"]["road"]:
return r_dict["address"]["road"]
elif "address" in r_dict and r_dict["address"] and r_dict["address"]["neighbourhood"]:
return r_dict["address"]["neighbourhood"]
elif "address" in r_dict and r_dict["address"] and r_dict["address"]["suburb"]:
return r_dict["address"]["suburb"]
elif "address" in r_dict and r_dict["address"]:
if "road" in r_dict["address"] and r_dict["address"]["road"]:
return r_dict["address"]["road"]
elif "neighbourhood" in r_dict["address"] and r_dict["address"]["neighbourhood"]:
return r_dict["address"]["neighbourhood"]
elif "suburb" in r_dict["address"] and r_dict["address"]["suburb"]:
return r_dict["address"]["suburb"]
elif "residential" in r_dict["address"] and r_dict["address"]["residential"]:
return r_dict["address"]["residential"]
elif "village" in r_dict["address"] and r_dict["address"]["village"]:
return r_dict["address"]["village"]
elif "town" in r_dict["address"] and r_dict["address"]["town"]:
return r_dict["address"]["town"]
else:
return 'n/a'
else:
return 'n/a'
else:
plpy.error('Failed to received a geo full address %s', r.json())
plpy.warning('Failed to received a geo full address %s', r.json())
#plpy.error('Failed to received a geo full address %s', r.json())
return 'unknow'
$reverse_geocode_py$ LANGUAGE plpython3u;
-- Description