Ищу страну / штат / город базы данных? [закрыто]


22

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

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

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

Я видел несколько сайтов, делающих это, поэтому я уверен, что есть практическое решение там.


Я использую это и прекрасно работает! universal-tutorial.com/rest-apis/…
Рон

Ответы:


18

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

Другие справочники (это искомый термин), в том числе GeoNames , которые также имеют загружаемые данные бесплатно. (Я уверен, что StackOverflow или даже поиск в Google могут дать вам больше вариантов в том же духе.)

Кроме того, если вы планируете создать пользовательский интерфейс, позволяющий пользователям выбирать из вашего списка мест, я хотел бы предложить плагин Freebase Suggest, плагин jQuery, который заставит пользователей выбирать из определенной категории (в вашем случае, стран, скажем) и предоставить хороший интерфейс для выбора из того, что семантическая база данных Freebase считает правильным. Он даже предоставляет некоторый вики-подобный контекст, чтобы помочь с устранением неоднозначности.


Вторичный GeoPlanet. Одна из приятных особенностей идентификаторов (идентификаторов WOE) в данных состоит в том, что они разработаны так, чтобы быть стабильными, поэтому вы не будете сталкиваться с конфликтами с будущими обновлениями БД.
Михал Мигурски

1
Спасибо за предоставление этих ссылок. Я потратил много времени на работу с обоими и успешно реализовал их, но теперь я собираюсь просто уйти. Все выглядело хорошо, что касается стран и штатов, но структура, используемая для всего, что ниже штатов, настолько непоследовательна. Я больше не считаю это практичным. В некоторых странах есть как штаты, так и города, а в некоторых - только города, но вместо штатов в этих странах есть провинции. У меня сложилось впечатление, что так оно и будет. Но это не так. Штаты из США опускаются примерно на 3 уровня. Хотя Атланта - город ...

1
в Грузии это выглядит так: США -> Грузия -> Фултон Каунти -> Атланта. И в округе Фултон есть не только Атланта, но и другие места, и не все из них являются городами. Там также перечислены Адамсвилль, который на самом деле просто место.

4
Безусловно, это не простые проблемы; возможные иерархии являются сложными (и по некоторым определениям, неограниченными) и зависят от различных культурных норм и государственных нормативных актов, а также от различных вариантов использования. Я бы порекомендовал взглянуть на документацию, которая может сильно помочь: developer.yahoo.com/geo/geoplanet/guide/… Вы можете выбрать только города, если хотите, или только административное деление. И документация Yahoo !. объясняет различные иерархии. Тем не менее, я понимаю ваше разочарование, это сложно! Удачи!
npdoty

Данные Yahoo Geoplanet были сняты, вот последняя версия: archive.org/details/geoplanet_data_7.10.0.zip
0


1

Посмотрите на GeoDB Города . Это сервис, который я разработал, и хост, который упаковывает данные GeoNames.org в интерфейс REST. Я считаю, что это должно обеспечить то, что вы ищете с точки зрения стабильных данных. Данные о старом городе никогда не удаляются физически, только помечаются как таковые (что может произойти при обновлении из GeoNames). Сервис также позволяет отображать результаты по городу / региону / стране на нескольких языках.

Бесплатный экземпляр - довольно разумный IMO, но я предвзят, конечно.


0

Существует несколько платных и бесплатных источников для баз данных городов страны:

  1. GeoNames - это бесплатные данные, но много-много данных. Вам придется обратиться за помощью к администратору базы данных для очистки данных. Но это одноразовое усилие для очистки и загрузки данных в соответствии с вашими требованиями. После извлечения zip-файла размер файла составил 1,3 ГБ, а для загрузки этих данных в БД также требуется хорошее мощное оборудование.
  2. Данные MaxMind очень старые, и они перестали обновлять предоставляемые ими бесплатные данные
  3. Платные данные GeoDatasource
  4. База данных городов от http://www.worldcitiesdatabase.com по разумной цене.
  5. Затем вы также можете взглянуть на платные услуги MaxMind, но они очень дороги, если ваш бюджет не очень хорош.

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.