EDICIóN GENERAL
310 meneos
 

Base de datos con países, regiones y localidades de todo el mundo geoposicionados

Este SQL contiene una base de datos con "casi" todas las localidades del mundo agrupadas en regiones y países. Cada registro está en ocho idiomas (Ruso, Inglés, Alemán, Francés, Castellano, Italiano, Portugués y Chino). Contiene un total de 214 países, 1997 regiones y 129602 localidades. Contiene también la posición devuelta por la API de Google Maps para latitud y longitud y si esa posición es exacta o no. Espero que os sirva de ayuda en vuestros proyectos. Más info en el primer comentario.

| etiquetas: sql , base de datos , países , regiones , localidades
165 145 1 K 492 mnm
165 145 1 K 492 mnm
Cada tabla contiene las relaciones con las tablas superiores siendo por orden: idiomas, paises, regiones, localidades.

Las tablas de paises, regiones y localidades contienen la posición de longitud y latitud en los campos x e y. Además incluye el campo de exacto que indica si ese lugar está correctamente posicionado (según los datos devueltos por google maps).

Las búsquedas de las localidades se realizaron de la siguiente manera:

Localidad, región, país [si falla] > Localidad, país [si falla] > país.

Solo lleva exacto = 1 cuando la búsqueda por localidad, región y país devuelve posición exacta.
Pues nunca está de mas tenerla, gracias :-)
¡Muchas gracias!
y quien se ha currado esto?
#4 Pues ha sido un poco lioso.

1) He descargado una serie de XML con continentes, países, regiones y localidades, en total casi 20.000 XML.
2) He recorrido cada XML parseando el contenido y guardándolo en base de datos.
3) He creado un script de PHP que realiza la petición de geolocalización. El problema está en que google te corta las solicitudes en cuanto detecta peticiones sistemáticas automáticas o demasiado rápidas desde una misma IP, con lo que el script hacía un sleep(1) entre cada petición. Cuando google detectaba algo extraño, cortaba la conexión indicando "límite de peticiones alcanzado", entonces reiniciaba el router, y con nueva IP volvía a lanzar el proceso.

Es casi una semana de trabajo :-)
Dice que:
<<You have reached the download-limit for free-users. Want to download more?>>

Alguien puede poner algún enlace alternativo?

Por cierto:
meneame.net/story/las-horas-felices-rapidshare
#6 Pues enhorabuena por el trabajo! Esperemos que no se muevan xD
#6 podías habértelo bajado de este enlace rapidshare.com/files/119757880/paises.sql.gz xD

enhorabuena por el trabajo por el trabajo
Subiendo a a Uploading.com y Gigasize.com
#6 Un buen curro...una pregunta, porque lo has hecho a 3 niveles y no 4? (Country->AdministrativeArea->SubAdministrativeArea->Locality)

Saludos!
#11 Despues de buscar en decenas de sitios y decenas de bases de datos, esta estructura es la única que he encontrado que mantiene una cantidad de niveles proporcional para todos los datos. En otras bases de datos había lugares con 5 niveles, 3 niveles, 2 o seis, con lo cual el trabajo manual de reasignar todas las posiciones a 4 niveles era imposible, entonces entre lo imposible y lo posible, he optado por lo segundo :-)

Link a Gigasize.com: www.gigasize.com/get.php?d=2vmd9fgf4qb
#12 Gracias por compartirlo, majete.
Meneo al canto por el trabajazo del asunto.
¿Y estos datos de donde salen? No es una pregunta trivial ya que utilizar estos datos derivados pueden suponer una violación de la licencia de innumerables sitios, por ejemplo Google Maps.

En este enlace aparecen varios sitios que ofrecen esta información de forma libre
wiki.openstreetmap.org/index.php/Search
Es importante saber de dónde salen, además, para saber si te puedes fiar o no.
#15 Hombre, sería acojonante que la posición GPS de mi ciudad estuviera sometida a copyright xD
Parecido a esto está geonames.org con sus países, ciudades...

En geonames tienen también bases de datos descargables de puntos de interés, artículos de wikipedia geoposicionados, BDD con códigos postales de varios países...

download.geonames.org/export/dump/
#17 pues sí y no

Tu puedes coger un gps y publicar que tu ciudad está en longitud foo y latitud bar, lo que no puedes hacer es tomar esos datos de un corpus con copyright restrictivo y reproducirlos alegremente.
Hablando de Geonames, yo tengo una versión de hace un año. Cargué todos los paises en una tabla MySQL que tiene 6,291,013 posiciones entre las cuales hay 2,232,137 localidades.
Un posible uso de estos datos: zeembo.com/gmaps.html
#6 gracias x el aporte y por compartir tu trabajo :-P
#21 Si eres el responsable de Zeembo, que sepas que si buscas España/A Coruña/A Grela te lo posiciona en... Ourense

Gracias por el currazo
Me acabas de alegrar la vida #0, iba a mandarte un mensaje privado pero no he encontrado como se hace (o si se puede) y la verdad que llevo haciendo algún tiempo un SIG mediambiental, con la cosa del cambio climático, y crear las tablas georreferenciadas es lo mas pesado!.
Gracias por todo! :))))
#23 corregido :-)

Aunque, eso realmente no está creado a partir de las coordenadas.

Las coordenadas las usaré para buscar envíos en un radio de quilómetros de otras localizaciónes (tu localización o la localización de los envíos), para eso, si os interesa, esta es la consulta:

SELECT id, ( 3959 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance FROM markers HAVING distance < 25…   » ver todo el comentario
Buen trabajo!
Mmmm... un post positivo, constructivo, curradísimo, desinteresado, no linkado a una página en inglés, sin hablar de iglesia ni política, mmm...

¡¡A LA HOGUERA CON ESTE BICHO RARO DE MENEAME!!

(Excelente, Lito, me has alegrado el día. Hacía años que no leía aportes como este en meneame, como era al principio.)
Lito felicidades!!!!! muy buen trabajo!!!! y tal y como dice pacoss es raro encontrar un post como este en meneame.net, que ultimamente todos hacen referencia hacía su grupo politico para intentar machacar al otro bando (pepero criticando socialistas etc etc), felicidades
#6 Sere curioso, ¿de donde has obtenido los xml con continentes, paises, regiones y localidades?
eso de "Este SQL" me ha desanimado por completo de descargar el archivo.
#32 nadie te obliga a descargarlo. Es un fichero SQL que contiene las tablas de una base de datos MySQL.
Excelente, muchas gracias
Ya podre practicar bases de datos con esto :-)

Bendito seas Lito ;)
#36 Si amplías el comentario:

To search by kilometers instead of miles, replace 3959 with 6371.
Porque no creas un proyecto en SourceForge.Net con el fichero? Así siempre estarà disponible i seguro que tendrà una buena difusión.
comentarios cerrados

menéame