Spaces:
Configuration error
Configuration error
Download clients/python/mapbox.py from AnthropicallyHuggingFaces/ai-platform-toolbox: direct link, hf CLI and curl.
- Browser
- Download file 1.27 kB
-
https://huggingface.co/spaces/AnthropicallyHuggingFaces/ai-platform-toolbox/resolve/main/clients/python/mapbox.py
- Command line
-
hf download hf://spaces/AnthropicallyHuggingFaces/ai-platform-toolbox/clients/python/mapbox.py
-
curl -L -o mapbox.py https://huggingface.co/spaces/AnthropicallyHuggingFaces/ai-platform-toolbox/resolve/main/clients/python/mapbox.py
1.27 kB
| """Mapbox client - geocoding, directions/routing, geofencing (via tilesets).""" | |
| import os | |
| import requests | |
| BASE = os.getenv("MAPBOX_API_BASE", "https://api.mapbox.com") | |
| TOKEN = os.getenv("MAPBOX_ACCESS_TOKEN") | |
| def _p(**params): | |
| if not TOKEN: | |
| raise RuntimeError("MAPBOX_ACCESS_TOKEN not set") | |
| params["access_token"] = TOKEN | |
| return params | |
| def geocode(query, limit=5, types=None, **kwargs): | |
| p = _p(limit=limit, **kwargs) | |
| if types: | |
| p["types"] = types | |
| return requests.get(f"{BASE}/geocoding/v5/mapbox.places/{query}.json", params=p, timeout=60).json() | |
| def reverse_geocode(lng, lat, limit=1): | |
| return requests.get(f"{BASE}/geocoding/v5/mapbox.places/{lng},{lat}.json", params=_p(limit=limit), timeout=60).json() | |
| def directions(coordinates, profile="driving-traffic", alternatives=False, **kwargs): | |
| coords = ";".join(f"{lng},{lat}" for lng, lat in coordinates) | |
| p = _p(alternatives=str(alternatives).lower(), **kwargs) | |
| return requests.get(f"{BASE}/directions/v5/mapbox/{profile}/{coords}", params=p, timeout=60).json() | |
| def isochrone(lng, lat, minutes=10, profile="driving"): | |
| return requests.get(f"{BASE}/isochrone/v1/mapbox/{profile}/{lng},{lat}", params=_p(contours_minutes=str(minutes)), timeout=60).json() | |