Merge pull request #25 from mokaddem/geoFix

Fix - Geolocalisation
pull/30/head
mokaddem 2017-12-19 09:35:38 +01:00 committed by GitHub
commit 9cfaa587fb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 9 additions and 2 deletions

View File

@ -172,8 +172,15 @@ class Geo_helper:
def ip_to_coord(self, ip): def ip_to_coord(self, ip):
resp = self.reader.city(ip) resp = self.reader.city(ip)
lat = float(resp.location.latitude) try:
lon = float(resp.location.longitude) lat = float(resp.location.latitude)
lon = float(resp.location.longitude)
except TypeError: # No location, try to use iso_code instead
self.logger.info('no location in geIP.database response for ip: {}'.format(ip))
iso_code = resp.registered_country.iso_code #if no iso_code, throws
coord = self.country_code_to_coord[iso_code.lower()] # countrycode is in upper case
lat = float(coord['lat'])
lon = float(coord['long'])
# 0.0001 correspond to ~10m # 0.0001 correspond to ~10m
# Cast the float so that it has the correct float format # Cast the float so that it has the correct float format
lat_corrected = float("{:.4f}".format(lat)) lat_corrected = float("{:.4f}".format(lat))