def parse_resource(resource): """ Parse record. """ if 'geometry' in resource: words = resource['words'] position = resource['geometry'] latitude, longitude = position['lat'], position['lng'] if latitude and longitude: latitude = float(latitude) longitude = float(longitude) return Location(words, (latitude, longitude), resource) else: raise exc.GeocoderParseError('Error parsing result.')
def parse_resource(resource): """ Parse record. """ if resource['type'] == '3 words': words = resource['words'] words = join_filter(".", [words[0], words[1], words[2]]) position = resource['position'] latitude, longitude = position[0], position[1] if latitude and longitude: latitude = float(latitude) longitude = float(longitude) return Location(words, (latitude, longitude), resource) elif resource['type'] == 'OneWord': words = resource['words'] words = join_filter(".", [words[0], words[1], words[2]]) oneword = resource['oneword'] info = resource['info'] address = join_filter(", ", [ oneword, words, info['name'], info['address1'], info['address2'], info['address3'], info['city'], info['county'], info['postcode'], info['country_id'] ]) position = resource['position'] latitude, longitude = position[0], position[1] if latitude and longitude: latitude = float(latitude) longitude = float(longitude) return Location(address, (latitude, longitude), resource) else: raise exc.GeocoderParseError('Error parsing result.')