Вопрос

Мне нужно геокодировать около 200 адресов на запрос и выполнять около 3000 запросов в день.Я буду делать это на стороне сервера, используя PHP.Я посмотрел на Как преобразовать адрес в широту / долготу?, но не смог найти способ ни для Google Maps HTTP Request API, ни для Yahoo Geocoding REST API (не могу использовать JavaScript, поскольку это серверная часть) отправлять несколько адресов.

В первую очередь я буду использовать это для сортировки адресов на основе координат, и, если API поддерживает, заполните все недостающие данные для каждого адреса.Адреса будут указаны только в Соединенных Штатах.Адреса для геокодирования будут вводиться пользователем, поэтому используйте свободную форму, например "адрес улицы, почтовый индекс" или "город, штат" и т.д.Точность не слишком важна для координат, скажем, в пределах пятисот футов или около того.

Есть ли бесплатный API для обработки этого?Есть ли способ заставить Yahoo или Google указывать в запросе несколько местоположений?

Это было полезно?

Решение

geocoder.us будет делать то, что вы хотите, но у вас может возникнуть та же проблема при массовом поиске.Однако они проводят массовый поиск за определенную плату.

Бы Географические названия предоставлять достаточную информацию либо с помощью объемных необработанных данных, либо с помощью их веб - сервисы?

Другие советы

Я просмотрел Google Maps api, Yahoo Maps Api, MapQuest API и Microsoft Virtual Earth API.Ни один из этих бесплатных сервисов не допускает массового геокодирования.

Но Google Maps api позволяет использовать 15 000 goecodes в день.Но им не нравится, когда вы отправляете слишком много за один раз.Они предлагают ждать 200 мс между запросами.Кстати, они отслеживают вас по IP-адресу.

Yahoo позволяет получать 5000 долларов в день, а также является простым в использовании API.Microsoft Virtual Earth позволяет использовать 5000 в день, но документация по API - это заноза в заднице.

MapQuest просто странный и, похоже, не дает хороших результатов (наименее точный из всех, что я видел).

На самом деле я настроил свой код на чередование нескольких сервисов, чтобы я мог делать несколько запросов одновременно.Это - своего рода - имитирует массовое кодирование.

В Геокодер USC WebGIS Предложения несколько API геокодирования который может это сделать.Это бесплатно и позволяет выполнять пакетный поиск из вашего кода, или вы можете загрузить базу данных для пакетной обработки.

Mapquest имеет API, который позволяет выполнять пакетное геокодирование.Однако они не предоставляют его непосредственно для PHP.Но вы можете посмотреть их протокольную документацию http://developer.mapquest.com/Library/SDK_Documentation/Protocols реализовать это самостоятельно.Они могут ссылаться на массовое геокодирование как на коллекцию местоположений в документах.

Это может показаться странным, но некоторое время назад я создавал сайт, и клиент хотел, чтобы пользователь вводил только zip-файл, а мы предоставляли остальные данные.Я использовал yahoo weather api, который в то время возвращал xml-файл со всеми данными о погоде, а ciy, state, zip хорошо работали для адресов в США

Посмотрите на http://www.torchproducts.com/tools/geocode для быстрого геокодирования списка адресов

Использование Gнаправления.Он допускает до 25 путевых точек одновременно и возвращает геокодированное местоположение для каждой из них.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top