Геокодирование карты Google - нет номера улицы? - PullRequest
0 голосов
/ 26 ноября 2011

В результате получается строка JSON, содержащая street_number - http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=false

"long_name" : "1600",
"short_name" : "1600",
"types" : [ "street_number" ]

Однако это не приводит к строке JSON, содержащей street_number - http://maps.googleapis.com/maps/api/geocode/json?address=26th+St+2nd+Ave+New+York,+NY+10019&sensor=false. Часть 26th St, кажется, просто исчезает. Есть идеи почему?

Ответы [ 3 ]

1 голос
/ 26 ноября 2011

Геокодирование в целом является недетерминированным.Хотя это не является распространенным явлением, один и тот же запрос может возвращать результаты с различной точностью в зависимости от изменений во внутренней реализации процесса геокодирования.

Другая проблема заключается в том, что в каком-то месте может отсутствовать адрес улицы или алгоритм не былспособен приблизиться к единице.

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

0 голосов
/ 14 ноября 2012

Другой сценарий, в котором номер улицы иногда отбрасывается, - это когда у него есть префикс направления, такой как 315 West 44th Street. В этом случае результаты могут быть более точными, если префикс сокращен, например 315 W 44th Street. Хотя я не видел этого документированного, каждая карта Google, которую я видел, сокращает направления таким образом, поэтому, возможно, адреса хранятся таким образом внутри, и вероятность хорошего результата улучшается путем сокращения перед геокодированием.

0 голосов
/ 26 ноября 2011

Очевидно, потому что 26th St часть не является street_number. 26th St и 2nd Ave являются названиями улиц, поэтому он просто отбрасывает 26th St часть запроса. В то время как в первом запросе 1600 действительно номер улицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...