Геокодирование (координаты по адресу)
Определяет координаты адреса (дома, улицы, города). Только для России.
Как вызвать
Чтобы вызвать метод, зарегистрируйтесь и подтвердите почту.
Укажите при вызове:
- Content-Type: application/json .
- $
— API-ключ. - $
— секретный ключ.
Тело запроса передавайте в кодировке UTF-8 .
Что в ответе
Адрес с координатами:
Координаты возвращаются в полях geo_lat и geo_lon . Поле qc_geo показывает, насколько точно удалось определить координаты:
| Код qc_geo | Описание |
|---|---|
| 0 | Точные координаты дома |
| 1 | Ближайший дом |
| 2 | Улица |
| 3 | Населенный пункт |
| 4 | Город |
| 5 | Координаты не определены |
Метод возвращает больше полей, чем показано в примере. Описание всех полей см. в API Стандартизации.
Покрытие координат
«Дадата» берет координаты домов и улиц из OpenStreetMap.
Покрытие по домам:
- Москва — 97%,
- Санкт-Петербург — 91%,
- другие города-миллионники — 69%,
- остальная Россия — 47%.
- Москва — 95%,
- Санкт-Петербург — 94%,
- другие города-миллионники — 81%,
- остальная Россия — 70%.
Примеры и интеграции
- C# / .NET
- Excel VBA
- Go
- Java
- Laravel
- Node.js
- PHP
- PHP (одним файлом)
- Python
- R
- Symfony
- МойСклад
Ограничения
Максимальная частота запросов — 10 в секунду с одного IP-адреса.
Максимальная частота создания новых соединений — 60 в минуту с одного IP-адреса.
Дадата не поддерживает вызов этого метода из браузерного JavaScript. Иначе злоумышленник мог бы похитить секретный ключ и использовать API за ваш счет.
Стоимость
Каждый вызов платный, вне зависимости от того, удалось определить координаты или нет.
Прямое и обратное геокодирование – тестирование популярных решений
В современном мире огромное количество разнообразных сервисов обрабатывают геоданные.
Задачи прямого и обратного геокодирования встречаются повсеместно – когда ваш пользователь вводит свой адрес, а вы на карте отображаете точку, где он находится. Или наоборот – ваш пользователь указывает точку на карте, а вы преобразуете эту точку в понятный адрес.
В рамках этой статьи я хочу рассмотреть наиболее популярные существующие решения для этой задачи, разобраться в их особенностях и тарифах и также провести тестирование качества геокодирования, чтобы выяснить, какой сервис наиболее предпочтителен для использования.
Содержание статьи:
Что такое прямое и обратное геокодирование?
В начале статьи я уже немного об этом сказал, теперь дам более строгое определение.
Прямое геокодирование – это задача получения координат географической точки по её адресу, написанному на понятном человеческом языке. Например, пользователь указывает адрес «Москва, Красная площадь д. 3», или «Москва, ГУМ» — нам, чтобы отобразить эту точку на карте, необходимо узнать координаты этого адреса.
Обратное геокодирование, соответственно, решает обратную задачу – по точке, указанной пользователем, получить её адрес или название расположенного там объекта.
И та, и другая задача очень часто встречаются в различных сервисах, работающих с геоданными пользователей, например, если вы разрабатываете интернет-магазин и хотите показать ближайший к адресу пользователя пункт выдачи заказов – вам не обойтись без определения точных координат местоположения пользователя. Если вы делаете сервис заказа такси или курьерской доставки – пользователю может быть удобно указать точку на карте, а вам для вашего курьера всё равно будет удобнее показать помимо точки на карте еще и адрес пользователя в виде текста.
Какие существуют сервисы для решения этой задачи?
Вообще, сервисы подразделяются на 2 основных категории – это оффлайн- и онлайн-сервисы. Оффлайн-сервис подразумевает, что вы скачиваете на свой локальный компьютер некую базу данных (добавляете её в своё приложение) и получаете информацию из неё. Онлайн-сервис представляет из себя API, к которому вы формируете запрос в соответствии с документацией, и он возвращает вам ответ с интересующей вас информацией.
В большинстве случаев онлайн-сервисы предлагают более высокую точность ответов, поскольку обновляются более часто, а также более удобны в использовании – потому что вам нет необходимости поддерживать отдельную машину под оффлайн-сервис или зашивать базу данных (достаточно объемную) и обслуживающий её код в ваше приложение. Поэтому в рамках этой статьи я буду рассматривать только онлайн-сервисы для решения задач прямого и обратного геокодирования.
Как найти GPS-координаты любого места на земле в Google Maps
Глобальная система определения местоположения, которая доставляет GPS-координаты в Карты Google и другие службы определения местоположения на технических устройствах, используют существующую географическую систему широты и долготы. Линии широты показывают расстояние к северу или югу от экватора, а линии долготы указывают расстояние к востоку или западу от основного меридиана. Используя комбинацию широты и долготы можно точно определить любое местоположение на Земле.
Как получить координаты GPS из Google Maps
Получить GPS-координаты из Google Maps в браузере компьютера очень просто. Следуй этим шагам:
- Откройте веб-браузер и перейдите на сайт Google Maps. Любой браузер будет работать с ними.
- Перейдите в местоположение, для которого вы хотите получить координаты GPS.
- Щелкните правой кнопкой мыши (или удерживайте нажатой клавишу Control на Mac) в этом месте.
- Выберите Что здесь? из меню.


Подробнее о координатах GPS
Широта делится на 180 градусов. Экватор расположен на широте 0 градуса. Северный полюс находится на широте 90 градусов, а южный −90 градусов.
Долгота делится на 360 градусов. Главный меридиан, который находится в Гринвиче, Англия, имеет долготу 0 градусов. От этой точки измеряется расстояние на Восток и Запад, простирающееся на 180 градусов на восток и −180 градусов на запад.
Минуты и секунды – это меньшие приращения градусов. Они позволяют получать более точные координаты. Каждый градус равен 60 минутам, а каждую минуту можно разделить на 60 секунд. Минуты обозначаются апострофом (‘), а секунды двойными кавычками («).
Чтобы местоположение на Google Maps по координатам
Если у вас есть набор GPS-координат, например, для геокэшинга, введите широту и долготу в Google Maps, чтобы найти местоположение и проложить к нему маршруты.
- Перейдите на сайт Google Maps.
- Введите координаты в поле поиска в верхней части экрана Google Maps в одном из трёх допустимых форматов:
- Градусы, минуты, секунды (DMS): например, 54°49’23.7″N 32°08’13.1″E
- Степени и десятичные минуты (DMM): например, 54.823248, 32.136982
- Десятичные градусы (DD): например, 54.823248, 32.136982
- Нажмите значок увеличительного стекла рядом с координатами в строке поиска, чтобы перейти к местоположению на Картах Google.

Как получить координаты в приложении Google Maps
Также можно получить GPS-координаты из мобильного приложения Google Maps на вашем мобильном устройстве. Оно работает как на Android, так и на iPhone, но шаги для каждого немного различаются.
Если вы используете Android, вы увидите координаты в самой верхней части экрана.
- Откройте приложение Google Maps и выберите и удерживайте местоположение, пока не увидите красную булавку.
- Посмотрите в поле поиска в верхней части экрана, чтобы найти координаты.
Если вы используете iPhone, вы найдете координаты внизу экрана, когда откроете информацию о местоположении.