API OpenStreetMap - бесплатная карта мира для ваших проектов
OpenStreetMap API представляет собой программный интерфейс, который позволяет разработчикам получать доступ к географическим данным, хранящимся в базе данных OpenStreetMap (OSM). API предоставляет различные методы для поиска, получения и обработки данных, а также для внесения изменений в базу данных OSM. Вот несколько примеров использования API OpenStreetMap с примерами кода:
1. Поиск объектов по координатам:
python
import requests
def search_objects(lat, lon):
url = f"https://nominatim.openstreetmap.org/reverse?format=json&lat={lat}&lon={lon}&zoom=18&addressdetails=1"
response = requests.get(url).json()
return response
Этот код выполняет обратный геокодинг, то есть находит адресные данные (название улицы, города, страны и т.д.) по заданным координатам.
2. Получение списка ближайших объектов:
python
import requests
def get_nearby_objects(lat, lon, radius=100):
url = f"https://api.openstreetmap.org/api/0.6/map?bbox={lon-radius},{lat-radius},{lon+radius},{lat+radius}"
response = requests.get(url)
# Обработка ответа...
return response
Этот код получает список объектов, находящихся в заданном радиусе от указанных координат.
3. Добавление нового объекта:
python
import requests
def add_new_object():
url = "https://api.openstreetmap.org/api/0.6/changeset/create"
data = """
"""
response = requests.put(url, data=data, headers={'Content-Type': 'text/xml'})
# Обработка ответа...
return response
Этот код создает новый объект в базе данных OSM путем создания изменений (changeset) и отправки XML-запроса на сервер OSM.
Конечно, это только некоторые из возможных примеров использования API OpenStreetMap. API также предоставляет другие методы для работы с маршрутами, тайлами карты и многими другими функциями.