Часто задаваемые вопросы о геокодировании

В этой статье приведены ответы на часто задаваемые вопросы о Geocoding API. Ознакомьтесь с разделом часто задаваемых вопросов о платформе Google Карт. Также ознакомьтесь с рекомендациями по геокодированию адресов.

Устранение неполадок

Устранение неполадок

Я получаю больше запросов, которые возвращают ZERO_RESULTS с геокодером. Выберите причину жалобы

В геокодере неоднозначные, неполные и неправильно отформатированные запросы, например с опечатками или несуществующими адресами, могут привести к результату ZERO_RESULTS. Если адрес не найден, лучше получить ZERO_RESULTS, чем частичный результат (например, только название пригорода вместо адреса).

Если в вашем приложении пользователи вводят адреса, то функция автозаполнения мест в Places API может повысить качество результатов. Автозаполнение мест позволяет пользователям выбирать из набора результатов на основе введенного текста. Это помогает им выбирать из результатов с похожими названиями и корректировать запрос, если они неправильно написали адрес.

Если ваше приложение обрабатывает неточные или неполные запросы, а также запросы, которые могут содержать ошибки, мы рекомендуем использовать функцию автозаполнения мест в Places API, а не прямой геокодер, доступный в Geocoding API. Подробнее о геокодировании адресов рассказывается в рекомендациях и записи в блоге Google Maps APIs.

Мне нужны быстрые ответы, а геокодер работает слишком медленно для моего приложения. Как отвечать быстрее?

Приложениям, которые реагируют на ввод данных пользователем и поэтому очень чувствительны к задержкам, мы рекомендуем использовать функцию автозаполнение мест в Places API (также доступна в JavaScript, Android и iOS) вместо геокодирования адресов. Подсказка мест оптимизирована для использования в интерактивном режиме и, таким образом, имеет чрезвычайно низкую задержку ответа.

Геокодирование адресов в Geocoding API оптимизировано для использования с полными, однозначными и правильно отформатированными адресами, например адресами доставки, введенными в онлайн-формы. Поэтому у него более высокая задержка, чем у Place Autocomplete. Прямой геокодер имеет больший охват и лучшее качество результатов, но несколько большую задержку.

Как уменьшить задержку в Directions API (устаревшая версия) и Distance Matrix API (устаревшая версия)?

Вместо адресов используйте идентификаторы мест, чтобы указать путевые точки, пункт отправления и пункт назначения. Идентификаторы мест лучше всего получать с помощью функции автозаполнения мест в Places API или библиотеки Places в Maps JavaScript API. Также ознакомьтесь с информацией о параметре placeIdOnly, который позволяет снизить стоимость использования автозаполнения мест.

Если в Directions API (устаревшая версия) или Distance Matrix API (устаревшая версия) вместо идентификатора места или координат широты и долготы передается строка адреса, то для преобразования этого адреса в идентификатор места перед расчетом маршрута используется тот же серверный компонент, что и в Geocoding API. Автозаполнение мест работает быстрее, чем геокодирование адресов. Если вы используете Directions API (устаревшая версия) или Distance Matrix API (устаревшая версия) в приложениях, где задержка критична (например, при обработке ввода данных пользователем), рекомендуем использовать автозаполнение мест, чтобы получать идентификаторы мест, соответствующие адресам, и передавать их в Directions API (устаревшая версия) или Distance Matrix API (устаревшая версия). Этот подход значительно снижает задержку. В нашей документации есть пример использования автозаполнения мест с маршрутами.

Как сообщить об ошибках в геокодере?

Если у вас есть отчеты об ошибках или запросы на добавление функций для сервиса прямого геокодирования, сообщите нам об этом в нашей общедоступной системе отслеживания ошибок.

Геокодер не дает хороших результатов для моего варианта использования. Какую помощь я могу получить?

Сообщите нам об этом через общедоступную систему отслеживания ошибок, указав несколько запросов. Мы проверим, не вызвана ли проблема ошибками или системными сбоями, и при необходимости внесем изменения в рекомендации, чтобы помочь разработчикам улучшить результаты.

Как получить наилучшие результаты от геокодера, используя фильтрацию компонентов?

В геокодере фильтрация компонентов применяется только к ограничениям postal_code и country. Ниже приведены примеры того, как лучше всего использовать фильтрацию компонентов в зависимости от того, какие результаты вам нужны. В URL запросов из примеров замените `YOUR_API_KEY` на свой ключ API.

  • Чтобы ограничить почтовые индексы определенной страной, укажите ее код в формате ISO 3166-2. Пример: components=country:CH|postal_code:8000 возвращает "8000 Zürich, Switzerland".
    https://maps.googleapis.com/maps/api/geocode/json?components=country:CH%7Cpostal_code:8000&key=YOUR_API_KEY
  • Чтобы ограничить запросы определенной страной, укажите ограничения для отдельных стран, используя код страны в формате ISO 3166-2. Названия стран и другие сокращения могут не дать тех же результатов, что и коды стран.

    Примеры:

    • Геокодирование для components=country:FRA|locality:gallus возвращает название района Галлус во Франкфурте-на-Майне, Германия. Это связано с тем, что трехбуквенный код страны для Франции (FRA) не поддерживается, поэтому разрешены результаты для любой страны, а результат во Франкфурте лучше, чем любой результат во Франции.
      https://maps.googleapis.com/maps/api/geocode/json?components=country:FRA%7Clocality:gallus&key=YOUR_API_KEY
  • Geocoding API не обязательно возвращает несколько результатов для неоднозначных запросов. На такие запросы лучше отвечает автозаполнение мест.

    Примеры:

    • Геокодирование для components=country:US|locality:madrid возвращает "Мадрид, Нью-Мексико 87010, США", но не другие города в США с названием "Мадрид".
      https://maps.googleapis.com/maps/api/geocode/json?components=country:US%7Clocality:madrid&key=YOUR_API_KEY
    • Если использовать сервис автозаполнения мест для input=madrid&components=country:us&types=(regions), а также указать область просмотра с помощью location и radius, чтобы сместить результаты поиска местоположений, будет получен ответ с несколькими городами в США под названием "Мадрид".
      https://maps.googleapis.com/maps/api/place/autocomplete/json?location=37.386052,-122.083851&radius=10000&input=madrid&components=country:us&types=(regions)&key=YOUR_API_KEY