Карты Google - предварительное геокодирование много адресов? - PullRequest
3 голосов
/ 01 ноября 2010

У меня есть около 1600 адресов, которые мне нужно нанести на карту.Я не хочу геокодировать во время выполнения, потому что я считаю, что это займет слишком много времени.Вместо этого я хотел бы заранее геокодировать адреса, добавлять их значения широты и долготы в таблицу и читать из таблицы во время выполнения.К сожалению, я не могу понять, как / где геокодировать пакет адресов.Один из вас объяснит мне и / или укажет хороший урок?

Заранее спасибо.

Ответы [ 2 ]

5 голосов
/ 02 ноября 2010

Это можно сделать с помощью API данных Карт Google. Раздел геокодирования будет вам интересен ( См. API документы ). Просто напишите PHP-скрипт для:

1) Просмотрите ваши адреса

2) Отправьте HTTP-запрос (используйте CURL или просто file_get_contents()) на http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=true_or_false

3) Разбор ответа JSON

4) Хранить в вашей базе данных

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

1 голос
/ 20 апреля 2012

В целях избежания нарушений TOS и проблем с производительностью / регулированием, вы можете рассмотреть возможность поиска альтернативного сервиса.

Я работаю в компании под названием SmartyStreets , где мы геокодируем ипроверить адреса.Несмотря на то, что Google сделает правильное предположение о достоверности адреса (и, следовательно, о точности геокодирования), кое-что, что CASS-Certified , сначала будет проверять наличие адреса, прежде чем возвращать координаты широты и долготы.У нас есть сервис под названием LiveAddress API , который делает это.

  • Вы можете выполнять массовое геокодирование с помощью нашего API (до 100 адресов на запрос)

  • Вы можете сохранить результаты (1600 адресов на самом деле очень мало. Мы можем обрабатывать наборы данных размером до десятков миллионов на регулярной основе).

  • Это быстро - и никаких ограничений или ограничений;Вы платите за то, что используете.

Из того, что вы упомянули, я думаю, что это будет соответствовать вашим потребностям.Дайте мне знать, если у вас есть другие вопросы.

...