Se supone que Correos es una empresa con participación pública (y viene de ser una empresa completamente pública) pero eso parece que no ayuda a que sus datos sean considerables como abiertos. Esto hace que algo tan absurdo como la base de datos de Códigos Postales y calles no esté disponible de forma simple abierta y gratuita, como debería. Es por esto que hace unos años hice un primer acercamiento a tener una base de datos de códigos postales, aunque aquella vez fue hecha de forma manual.
En esta ocasión he estado rebuscando por la red de redes y gracias a varias fuentes de datos que tenían información suelta, y también gracias al portal de datos.gob.es donde hay algunos elementos del INE, he conseguido hacer un megamix de información y poder crear una base de datos en SQL relacional de provincias, poblaciones (municipios) y códigos postales.
El portal lo he lanzado en postal.cat y aunque la web está en catalán, el contenido está en las lenguas oficiales, ya que las poblaciones han de estar así. Allí encontrarás los ficheros en formato CSV, Excel y SQL, dependiendo de lo que quieras hacer.
Además, es probable que haya una siguiente actualización en la que se incluya el callejero, de forma que en las grandes ciudades donde hay más d eun código portal por municipio, se podría buscar la calle y así saber cuál es el código portal correcto que tiene. De todas formas, esto es algo que ya llegará.
NOTA agosto 2018: Este proyecto se va a recrear en las próximas semanas, por lo que si los datos no son 100% fiables, pido un poco de paciencia.
Hola Javier. Gracias por compartir este currazo!
Buenos días, Javier.
Gracias por tu esfuerzo.
Totalmente de acuerdo contigo.
Buenos días Javier y gracias por la información, pero algo debo estar haciendo mal: selecciono un código postal de un pueblo (06600 Cabeza del Buey) y me salen muchos más ¿por qué puede ser?
Muchas gracias de nuevo.
Saludos
Muchas gracias por compartir, tienes toda la razón en que deberían ser datos de uso público.
He detectado algunos errores. Por ejemplo he buscado mi código postal, 50009 en Zaragoza y salen municipios de otras provincias.
Hola Javier, creo que algo no está funcionando bien en la generación del fichero. Salen varias poblaciones con el mismo código de población, Melilla sale en la provincia de ALAVA,…
Muchas gracias, me ha sido muy práctico, justo lo que necesitaba, muchas gracias por el esfuerzo!! 🙂
@David, supongo que te habrás dado cuenta ya que el código de población no es la clave primaria, tienes que fijarte en el código de población + el código de provincia (clave primaria compuesta).
Por cierto Javier, creo que en la tabla de población la latitud y la longitud están intercambiadas.
No están bien los códigos. Por poner un ejemplo, Ripollet no está en Ávila y la latidud y la longitud, tampoco coincide
Se agradece el esfuerzo, pero no es válido.
Una pena, muchas gracias.
Muchas gracias, me está siendo de gran ayuda para un análisis estadístico.
No coinciden los códigos postales con los distritos, gracias por el esfuerzo pero no sirve de ninguna manera…
Info muy útil, gracias por compartirlo
Hola,
acabo de bajarme tu excel y veo que los códigos postales no coinciden con las poblaciones 🙁
Un ejemplo:
Según tu excel:
01001 059 Reinosa -4.137972222 43.001055560 01 Araba/Álava
Según google maps:
Reinosa pertenece a Cantabria, y tiene código postal 39200. Las coordenadas según google maps son (Latitud: 43.0009228, Longitud: -4.1320259)
Tu planteamiento es genial, pero es erróneo.
Saludos
Dani
Hola Javier:
Me temo que en algún momento se te ha debido desordenar la información.
Te agradecería muchísimo que pudieras revisar si la que tienes tú original es correcta y que vuelvas a subirla.
Sería genial. 🙂
Saludos,
Raquel
Buenas tardes Javier,
Acabo de descargar los datos y creo que hay un cruce de información importante que imposibilita la correcta manipulación.
He intentado arreglarlo, pero el problema viene de origen.
Hola,
Se agradece el esfuerzo pero parece necesaria una mayor depuración de los datos.
Está claro que el excel no está correcto, supongo que debe haber un mal cruce de datos, supongo que se habrá relacionado sólo por idpoblacion cuando debía ser por idpoblacion e idprovincia
Pero partiendo de las sentencias SQL he construido las tablas y me encuentro con algunas inconsistencias, respecto a que los dos primeros dígitos del código postal no corresponde con la provincia.
codigopostalid poblacionid provinciaid
00240 001 01
00548 047 05
43421 021 08
01118 109 09
01211 109 09
01427 050 09
01427 192 09
26212 219 09
34260 316 09
34260 417 09
34260 446 09
34492 306 09
34492 373 09
39232 011 09
14449 015 13
18312 037 14
02636 060 16
24512 173 16
15489 087 18
19680 173 18
16160 105 19
18140 143 19
28190 067 19
02100 053 20
02170 013 21
22400 010 21
21193 222 24
08281 136 25
08289 192 25
08697 910 25
08717 216 25
22583 234 25
22584 234 25
02438 028 30
03010 030 30
03657 043 30
03659 022 30
15201 030 30
32131 024 30
50686 203 31
03392 024 33
05519 024 33
39250 032 34
34570 020 35
47428 225 37
10701 038 41
73820 037 43
43900 244 46
44630 128 46
22808 185 50
42221 215 50
42269 015 50
42269 172 50
42269 259 50
44591 021 50
90007 297 50
No lo he mirado muy a fondo, pero un primer vistazo a la base de datos (modo texto en el navegador) si que me parece que está bien.
Una cosa es el id del municipio según el INE (un identificador para cada municipio) y otro es el cp de correos (un mismo cp puede ser para varias poblaciones cuando son pequeñas o un población grande puede tener distintos cp).
Creo que la currada y que se ponga a disposición de todos merece un aplauso.
Muchísimas gracias, estoy de acuerdo con todo lo que comentas respecto de una empresa pública como correos.
Enhorabuena y mi admiración por tu trabajo.
Muchas gracias, un trabajo solidario magnífico.
Buenas, has comentado algo sobre los datos abiertos en datos.gob.es
Se me ocurre algún tipo de consulta tipo WFS con descripción de entidades o otros tipos de archivos GIS WMS o WCS.
Con lo que no tendríamos que almacenar información y esta estaría siempre actualizada
Pero estoy un poco pez para esta consulta y el lenguaje descriptivo de estos datos.
Un millón de gracias! Te guardo en favoritos para la actualización.
Me parece una idea fantástica, pero siento deciros que a esto hay que darle una vuelta y depurarlo. Si filtras por Madrid, aparecen 6.114 poblaciones distintas, entre ellas Santoña, Gerona, La Solana…
Ánimo para que esta idea fructifique.
Parece que la versión en SQL no tiene problemas, pero hay que enlazar códigos postales y municipios por 2 criterios (código de provincia+código de poblacion)
Quedas formalmente guardado en mis favoritos. Gracias por el currazo!
Los códigos postales son de libre acceso para todo el mundo en formato de consulta. Su implementación como base de datos incrementa su valor añadido y solo tiene sentido dentro de un entorno puramente comercial (campañas publicitarias, estudios de mercados, etc) por tanto no alimenta al servicio publico sino a intereses puramente comerciales, cabe mas cuando esa base de datos llega a incluir datos demográficos y cartográficos.
Un gran trabajo
Increible trabajo y decir que es el mas completo que he visto, muchisimas gracias por hacer este trabajo de esta manera tan profesional
Felicitaciones
Enhorabuena por tu Trabajo!!!
Mis agradecimientos por tu labor!!!
Un saludo
Gracias Javier!!!
Gràcies Javier des de València!!
Alguno sabeis de algo parecido pero de codigos postales de Portugal?
mil gracias de antemano
Gracias por lo realizado! Es algo que buscaba, si necesitas ayuda en algo contactate conmigo.
Mil gracias!!