generated from mwc/lab_weather
51 lines
1.2 KiB
Python
51 lines
1.2 KiB
Python
#!/usr/bin/python
|
|
# coding: utf8
|
|
|
|
from __future__ import absolute_import
|
|
|
|
import logging
|
|
|
|
from geocoder.mapzen import MapzenResult, MapzenQuery
|
|
from geocoder.location import Location
|
|
|
|
|
|
class MapzenReverseResult(MapzenResult):
|
|
|
|
@property
|
|
def ok(self):
|
|
return bool(self.address)
|
|
|
|
|
|
class MapzenReverse(MapzenQuery):
|
|
"""
|
|
Mapzen REST API
|
|
=======================
|
|
|
|
API Reference
|
|
-------------
|
|
https://mapzen.com/documentation/search/reverse/
|
|
"""
|
|
provider = 'mapzen'
|
|
method = 'reverse'
|
|
|
|
_URL = 'https://search.mapzen.com/v1/reverse'
|
|
_RESULT_CLASS = MapzenReverseResult
|
|
|
|
def _build_params(self, location, provider_key, **kwargs):
|
|
location = Location(location)
|
|
return {
|
|
'point.lat': location.lat,
|
|
'point.lon': location.lng,
|
|
'size': kwargs.get('size', 1),
|
|
'layers': kwargs.get('layers'),
|
|
'source': kwargs.get('sources'),
|
|
'boundary.country': kwargs.get('country'),
|
|
'api_key': provider_key
|
|
}
|
|
|
|
|
|
if __name__ == '__main__':
|
|
logging.basicConfig(level=logging.INFO)
|
|
g = MapzenReverse("45.4049053 -75.7077965", key='search-un1M9Hk')
|
|
g.debug()
|