0
Answered

Ответ на подсказку адреса в API отличается от ответа через веб-интерфейс

King Tratata 3 years ago updated by Антон 2 years ago 14

Добрый день!


Заметил следующую особенность:


На запрос "город железнодорожный, ул. юбилейная д.8/1" API возвращает только одну подсказку:

Иркутская обл, Усольский р-н, поселок Железнодорожный, ул Юбилейная, д 8/1



Если же сделать запрос руками через https://dadata.ru/suggestions/ :

Московская обл, г Балашиха, мкр Железнодорожный, ул Юбилейная, д 8/1

Иркутская обл, Усольский р-н, поселок Железнодорожный, ул Юбилейная, д 8/1


Почему запросы через веб интерфейс отличаются от запросов в апи? почему через веб интерфейс больше подсказок

Answer

Answer
Answered

Добрый вечер!

Дело в том, что в веб-интерфейсе срабатывает приоритет города при ранжировании (в вашем случае это Москва). Поэтому вам предлагаются адреса, релевантные и для Москвы. Когда вы отправляете API запрос, то там нет дополнительного условия, поэтому показывается одна подсказка.

Answer
Answered

Добрый вечер!

Дело в том, что в веб-интерфейсе срабатывает приоритет города при ранжировании (в вашем случае это Москва). Поэтому вам предлагаются адреса, релевантные и для Москвы. Когда вы отправляете API запрос, то там нет дополнительного условия, поэтому показывается одна подсказка.

столкнулся с похожей проблемой: строка "16-я В.О. д. 95/97 лит. А". На сайте выдается 2 варианта: "г Санкт-Петербург, линия 16-я В.О., д 95А/97" и "Архангельская обл, Вельский р-н, снт Сот Лита, д 95/97".

через апи с настроенными locations ('санкт-петербург', 'ленинградская') и 

Похоже, что у вас обрезался ответ. Уточните, пожалуйста, что именно у вас получается через API.

с locations_boost ('78', '47') не получаю ничего. как только убираю locations, получаю архангельскую область. хотелось бы получить Санкт-Петербург. Где может быть ошибка?

Under review

Дайте полный запрос, пожалуйста.

{"query":"16-я В.О. д. 95/97 лит. А", "count": "10", "locations":[{"region":"санкт-петербург"},{"region":"ленинградская"}],"locations_boost":[{"kladr_id":"78"},{"kladr_id":"47"}]}


Подсказки используют справочник адресов налоговой службы (ФИАС). В нем нет некоторых реально существующих домов и строений, в том числе дома 95/97 на 16-й линии В.О. в Питере. К сожалению, более полной базы, чем ФИАС, просто не существует.


Мы работаем с налоговой, чтобы она добавляла недостающие дома. Позаботимся и о вашем случае ツ


Поскольку 100% покрытия домов добиться невозможно, рекомендуем всегда разрешать человеку ввести адрес, даже если его нет в Подсказках.

А дом 95/97 точно есть? Я не нашёл его ни на яндекс-картах, ни на 2гис.

Такого дома на картах нет, но есть "26-я В.О. линия, д. 15, лит. Б", который тоже на сайте находится, а через API нет. Проблема не в ФИАС. Я пытаюсь получить разобранный на части адрес от пользователя. Предыдущий адрес тоже на сайте разбирается на части хорошо, а через API ничего не возвращается. Как правильно поставить настройки, чтобы и через API получать результат?

Проблема не в отсутствии дома в ФИАС. На сайте введенный адрес удачно разбирается на части и предлагается вариант "г Санкт-Петербург, линия 16-я В.О., д 95А/97". Я пытаюсь понять, что нужно сделать, чтобы такая же подсказка вернулась через API с распознанной улицей.

Да, похоже такого дома, действительно нет. В таком случае, как я понимаю, Подсказки выделяют из строки запроса номер несуществующего дома и показывают в поле Дом, как на картинке: http://nimb.ws/7SlOni А через API этот номер не возвращается ни в каком виде?

да, через API не возвращается ни в каком виде.

+1

Чтобы получать ответ на такой запрос, добавьте в запрос город. То есть вместо явного ограничения через locations дайте человеку возможность самому ввести город.