При работе над проектом по доступности образовательной инфраструктуры в Новой Москве нашей команде понадобилось геокодировать несколько сотен адресов, поэтому у нас возник закономерный вопрос: какой из сервисов геокодирования лучше подходит для выполнения нашей задачи. В результате было проведено небольшое исследование доступных на территорию России сервисов. Всего было рассмотрено 5 сервисов геокодирования на выборке из 100 адресов по всей России.
Геокодирование – процесс преобразования адресов в географические местоположения, которые можно использовать для размещения маркеров или позиционирования карты.
Обратное геокодирование – это процесс преобразования географических координат в адрес, понятный для пользователя.
DaData – сервис автоматической проверки и исправления контактных данных (ФИО, адресов, телефонов, email, паспортов), совмещенный с JavaScript-виджетом и API.
Сервис предоставляет:
- Поможет определять координаты на сайте, в мобильном, облачном или веб‑приложении;
- Обработку таблиц Excel и CSV. На входе — документ с адресами. На выходе — с координатами для каждого адреса;
Координаты для первых 100 адресов определяются бесплатно. Затем — 15 копеек за адрес.
DaData берет координаты домов и улиц из OpenStreetMap.
Преимущества:
- быстрота и удобство применения;
- возможность обрабатывать большие наборы данных;
- подробная информация об объекте.
Недостатки:
- сервис платный;
- иногда возникают неточности.
Google Maps предоставляет сервис My Maps, в котором возможна автоматическая трансформация из таблицы адресов в пространственные объекты, слой должен включать в себя не более 2000 точек.
Преимущества:
- быстрота и удобство применения;
- возможность сразу исправлять ошибки в адресах в таблице My Maps;
- сервис бесплатный;
Недостатки:
- ограничение одного слоя на 2 тысячи объектов и одного проекта на 10 тысяч объектов;
- неточности в определении 10% объектов выборки.
Яндекс Карты API Геокодер работает в среде JavaScript. Размер адресной базы — более 29 млн адресов в России и СНГ.
Преимущества:
- точность определения координат;
- получение интерактивной карты на сайте;
- наличие готовых скриптов кода.
Недостатки:
- сложность использования;
- для корректного определения координат необходимо изменять формат адреса на принятый в OSM (проверить адрес можно по ссылке: https://nominatim.openstreetmap.org/ui/search.html);
- больше 1000 запросов в сутки выполняются платно (лицензия от 16 тысяч рублей в месяц).
Bulk Nominatim Plugin позволяет работать с данными OSM напрямую в QGIS.
Преимущества:
- удобство использования сразу в QGIS.
Недостатки:
- для корректного определения координат необходимо изменять формат адреса на принятый в OSM.
MapBox Geocoding API позволяет выполнять геокодирование в среде Python.
Преимущества:
- точность определения координат;
- бесплатное определение до 600 координат в минуту.
Недостатки:
- для корректного определения координат необходимо изменять формат адреса на принятый в OSM;
- сложность использования.
Подводя итоги, сервис геокодирования необходимо выбирать в зависимости от поставленной задачи. Если требуется получить большой набор информации об объектах, лучше всего подойдет “DaData”, если удобнее выполнять геокодирование сразу в ГИС, то модуль Bulk Nominatim, при необходимости создания веб-карт - Яндекс Карты API Геокодер. Наиболее быстрым, удобным и бесплатным сервисом является Google My Maps.