Buscando País / Estado / Ciudad Base de datos? [cerrado]

22

Estoy creando un directorio que utiliza ubicaciones para clasificar todos los listados. En lugar de confiar en la entrada del usuario, me gustaría proporcionar una lista de ubicaciones que el usuario puede seleccionar. Ya he probado GeoWorldMap, que es proporcionado por GeoBytes, pero tiene ciertos problemas. Por ejemplo, enumera 275 países. Aparte de eso, su base de datos se actualiza regularmente, por lo que si mantengo una base de datos local, tendré que actualizarla de vez en cuando para asegurarme de que esté actualizada.

Quiero saber qué usan los desarrolladores para esto. En lugar de una base de datos, ¿utilizan algún servicio para obtener una lista de ubicaciones?

Me temo que la entrada manual del usuario no es una opción abierta porque la categorización por ubicación será esencial, por lo que no puedo confiar en lo que el usuario ingresa manualmente.

He visto pocos sitios haciendo esto, así que estoy seguro de que existe una solución práctica.

PolyGeo
fuente
Estoy usando esto y funciona muy bien !! universal-tutorial.com/rest-apis/…
Ron hace

Respuestas:

18

Creo que GeoPlanet de Yahoo! Puede ser muy útil para esto: proporcionan una lista bastante exhaustiva de lugares y las relaciones jerárquicas entre ellos, y puede descargar la lista de nombres o usar su API.

Otros diccionarios geográficos (ese es el término de arte que está buscando) incluyen GeoNames , que también tiene datos descargables de forma gratuita. (Estoy seguro de que StackOverflow o incluso una búsqueda en Google podrían brindarle más opciones en la misma línea).

Además, si planea crear una interfaz de usuario para permitir que los usuarios seleccionen de su lista de lugares, me gustaría sugerir el complemento Freebase Calculate, un complemento jQuery que obligará a los usuarios a seleccionar de una determinada categoría (en su caso, países, diga) y proporcione una buena interfaz de usuario para elegir entre lo que la base de datos semántica de Freebase considera correcta. Incluso proporciona un contexto tipo wiki para ayudar con la desambiguación.

npdoty
fuente
Secundando GeoPlanet. Una de las cosas buenas de los identificadores (ID de WOE) en los datos es que están diseñados para ser estables, por lo que no se encontrará con conflictos con futuras actualizaciones de la base de datos.
Michal Migurski
1
Gracias por proporcionar esos enlaces. Pasé mucho tiempo trabajando con ambos y los implementé con éxito, pero ahora voy a dejarlo. Todo se veía bien en lo que respecta a países y estados, pero la estructura utilizada para todo lo que se encuentra debajo de los estados es muy inconsistente. Ya no me parece práctico. Algunos países tienen estados y ciudades y algunos solo tienen ciudades, pero en lugar de estados, estos países tienen provincias. Tenía la impresión de que así es como sería. Pero no lo es. Los estados de los EE. UU. Bajan 3 niveles. Aunque Atlanta es una ciudad ...
1
en Georgia, así es como se ve: Estados Unidos -> Georgia -> Condado de Fulton -> Atlanta. Y el condado de Fulton no solo tiene Atlanta, también enumera varios otros lugares y no todos son una ciudad. También enumera Adamsville allí, que en realidad es solo un lugar.
44
Absolutamente, estos no son problemas sencillos; Las jerarquías posibles son complejas (y, según algunas definiciones, ilimitadas) y dependen de diferentes normas culturales y regulaciones gubernamentales, así como de varios casos de uso. Recomiendo consultar la documentación, que puede ser de gran ayuda: developer.yahoo.com/geo/geoplanet/guide/… Puede retirar solo las ciudades si lo desea, o solo las divisiones administrativas. Y la documentación de Yahoo! Explica las diferentes jerarquías. Aún así, entiendo tu frustración, ¡es complicado! ¡La mejor de las suertes!
npdoty
Los datos de Yahoo Geoplanet se han eliminado, aquí está la última versión: archive.org/details/geoplanet_data_7.10.0.zip
0fnt
1

Echa un vistazo a las ciudades de GeoDB . Este es un servicio que he desarrollado y alojado que envuelve los datos de GeoNames.org en una interfaz REST. Creo que debería proporcionar lo que está buscando en términos de datos estables. Nunca se eliminan físicamente datos antiguos de la ciudad, solo se marcan como tales (lo que puede suceder en una actualización de GeoNames). El servicio también le permite mostrar los resultados de la ciudad / región / país en varios idiomas.

La instancia gratuita es bastante razonable en mi opinión, pero soy parcial, por supuesto.

Michael Mogley
fuente
0

Existen múltiples fuentes gratuitas y de pago para las bases de datos de ciudades de países:

  1. GeoNames es información gratuita pero mucha información. Deberá solicitar la ayuda de un DBA para limpiar los datos. Pero es un esfuerzo único limpiar y cargar los datos según sus requisitos. Terminé con un tamaño de archivo de 1.3 GB después de la extracción de zip y cargar estos datos a DB también requiere un buen hardware potente.
  2. Los datos de MaxMind son muy antiguos y han dejado de actualizar los datos gratuitos que proporcionan
  3. Datos pagados de GeoDatasource
  4. Base de datos de ciudades de http://www.worldcitiesdatabase.com que tiene un costo razonable.
  5. Luego puede ver los servicios de datos pagos de MaxMind también, pero son muy costosos a menos que su presupuesto sea muy bueno.

La elección es tuya. Creo que la calidad de los datos puede diferir con cada proveedor anterior.

Ganesh S
fuente