Какой самый простой способ сделать одноразовый массовый геокод? (580 000 адресов в США)

13

Я работаю над проектом, связанным с гражданским населением, и мне нужно иметь возможность отображать все свойства в Филадельфии на карте, поэтому мне нужно получить широту и долготу для всех 580 000 объектов. (Только один раз)

Большинство API, таких как Google / Yahoo, имеют ограничения в 5000 в день, и даже BatchGeo имеет аналогичный лимит.

Есть ли способ сделать одноразовое геокодирование всех этих адресов?

Тобиас Фюнке
источник
4
Самый простой способ - найти хорошего коммерческого поставщика.
Мэтью Снейп
1
Любите свое имя пользователя!
nmpeterson

Ответы:

14

Вы можете попробовать инструмент Street Address to Coordinates из набора Data Science Toolkit.

This API takes either a single string representing a postal address, or a JSON-encoded  
array of addresses, and returns a JSON object with a key for every address. The value 
for each key is either null if no information was found for the address, or an object 
containing location information, including country, region, city and latitude/longitude 
coordinates. Here's an example:

Не уверен, каковы ограничения API для размещенной копии Пита Уордена, но вы можете запустить инструментарий самостоятельно и выполнять обработку в автономном режиме, как рекомендует @Devdatta. Существует загружаемая виртуальная машина, которая содержит все инструменты на веб-сайте. Удачи :)

RK
источник
Большое спасибо! Я попробую и дам знать, сработало ли это.
Тобиас Фюнке
Пока все отлично работает! Я управляю виртуальной машиной, так что, надеюсь, нет пределов. Это вытягивание из локальной базы данных или проверка какого-то веб-API?
Тобиас Фюнке
1
VM использует поставляется с базой данных мест, так что да, без ограничений. Покрытие отлично подходит для Соединенных Штатов, если я не ошибаюсь. Вы можете поиграть с источником, если вам интересно :) github.com/petewarden/dstk и github.com/petewarden/dstkdata
RK
1
Это заняло восемь дней
Тобиас Фюнке
1
Спасибо за эту ссылку @RK Интересно, почему datasciencetoolkit не так популярен. Они не подходили к моим исследованиям последние несколько дней, им пришлось копать глубже. Ура!
17
3

С таким количеством данных я бы предложил вам офлайн геокодирование. Только http-запросы на эти многочисленные записи будут классифицироваться как DoS-атака любого сервера.

Девдатта Тенгше
источник
4
Не совсем верно. Если вы используете сервис, предназначенный для обработки такого количества запросов геокодирования, это не будет проблемой. API LiveAddress может легко обрабатывать 1000 запросов адресов в секунду. Это бы выбило 598к за 10 минут. (Я работаю над проверкой адресов и геокодированием весь день - я работаю на SmartyStreets)
Джеффри
3

Геокодирование приведет к точкам - 580 000 из них. Вы уверены, что хотите отобразить их все на карте? Так много точек скопления, вероятно, сделает карту неразборчивой. Эти проблемы предполагают, что вы найдете способ геокодировать так много записей.

Записи посылок города Филадельфии доступны в виде многоугольного слоя. Кроме того, эти полигоны уже доступны как картографический сервис. Если данные / сервис соответствуют вашим потребностям, вам не нужно беспокоиться о геокодировании такого количества точек, и полигоны, скорее всего, будут выглядеть лучше, чем многие точки на карте.

Информация о данных (включая метаданные и загрузку) и картографическом сервисе:

http://www.pasda.psu.edu/uci/MapService.aspx?Dataset=462

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

http://maps.psiee.psu.edu/preview/map.ashx?layer=462


источник
3

Самый простой способ, которым я могу придумать, это взять кого-нибудь с лицензией ArcGIS и передать его в геокодер в среде рабочего стола.

http://www.lib.unc.edu/reference/gis/faq/geocode.html

Раги Язер Бурхум
источник
2

Вы можете попробовать Geocoda: https://geocoda.com для JSON API. Geocoda имеет API, который позволяет получить широту / долготу для адреса, который соответствует вашим требованиям. Geocoda не имеет дневного лимита запросов, но имеет начальный лимит аккаунта 10 запросов в секунду.

Отказ от ответственности: я работаю в Geocoda. Дайте мне знать, если вам нужна помощь в начале работы или вы хотите предварительно просмотреть наш пакетный API.

runako
источник
1

Вы можете попробовать SVB Mapper, который можно скачать отсюда и который очень хорошо работает с Excel и Bing Maps. Вы можете запустить картографирование и анализ прямо в Excel. Возможно, вам придется проверить квоту и лимиты.

Боб Джулиан
источник