Геокодирование с использованием REST API дает отличные результаты от карты Here WeGo - PullRequest
0 голосов
/ 27 октября 2019

Я студент, работающий над проектом навигации с использованием API Here's REST.

Вопрос, который я задаю, касается расхождений при поиске местоположения с помощью API REST Geocoder и онлайн-карты Here WeGo.

Я пытаюсь выполнить прямое геокодирование, используя поисковый термин "Kent Ridge MRT" через API геокодера, чтобы получить соответствующий набор координат. Это станция метро, ​​расположенная в моем кампусе, в котором находится Национальный университет Сингапура.

Используются следующие параметры

destination_input = "Kent Ridge MRT singapore"
country = "SGP"
gen = 9

Они помещены в диктовку geocoding_params

geocoding_params = {"app_code": app_code, "app_id": app_id, "searchtext": destination_input,
"country": country, "gen": gen}

Затем выполняется запрос GET с использованием библиотеки запросов в Python 3.7.3 через

geocoding_data = requests.get(url = geocoding_base_url, params = geocoding_params)

Где geocoding_base_url = "https://geocoder.api.here.com/6.2/geocode.json"

Запрос дает мне три возможных местоположения, перечисленных здесьв широте / долготе: (1.30098, 103.77231), (1.29354, 103.77138) & (1.2935, 103.78102).

Ни одна из них не является действительными координатами станции метро Kent Ridge (1.29364, 103.78466), которая может бытьполученный, когда кто-то вводит те же самые термины поиска, используя Here WeGo.

Мне любопытно узнать, почему существует такая разница и есть ли способ получить то, что я вижу в Here WeGo.

На данный момент я попробовал расширить поле поиска, удалив параметры country и gen, сохранив searchtext = "Kent Ridge MRT singapore", но безрезультатно. Результаты соответствуют трем, которые я получил выше.

1 Ответ

0 голосов
/ 28 октября 2019

SearchAPI, поддерживающий HereWeGo и GeocoderAPI, - это разные сервисы с разными подходами и целями. Причина, по которой вы не можете найти свое место в "Kent Ridge MRT" с помощью GeocoderAPI, заключается в том, что GeocoderAPI не поддерживает места.

Хорошая новость: оба они объединены как OpenSearch в платформе HERE Open Location: https://developer.here.com/products/open-location-platform

Проверьте документацию Open Location Platform на https://openlocation.here.com/resources/documentation

...