Busca Paises, ciudades y lugares utilizando Nominatim de OpenStreetMap

AUTOR: Hugo Miguez CREADO: 2018-09-23 15:42:16

A mitad del 2018 Google ha cambiado las condiciones de uso sobre el uso de sus apis. En el caso de maps es necesario añadir una cuenta con la tarjeta de crédito o similar para poder activar el servicio. Pero Nominatim de OpenStreetMap te permite las mismas funciones que geocode de las apis de google maps.

¿Porqué utilizar Nominatim de OpenStreetMap en vez de Google Maps apis ?

La respuesta es simple. A mediados de 2018 Google ha cambiado la forma de utilizar las apis y ahora es necesario agregar un forma de facturación. Osea tu tarjeta de crédito. Pero OpenStreetMap ofrece el servicio de obtener lugares, ciudades, paises , código posta, etc. Buscando por nombre o bien por ubicaciones y todo de forma gratuita. Además ofrece los datos varios formatos como html, xml, json y jsonv2.

En el siguiente ejemplo introduce una ciudad y te devolverá los datos en formato json.


Buscar un lugar

Buscar
Resultado devuelto en json

Código en jquery
var buscar = $("#txt_post_lugar").val();
$.ajax({ url:'https://nominatim.openstreetmap.org/search/' + buscar + '?format=json&addressdetails=1&limit=1', success: function(data){ $("#pre_post_lugar").html(JSON.stringify(data)); },error : function() { callBack(false); } });

Url : https://nominatim.openstreetmap.org/search/' + buscar + '?format=json&addressdetails=1&limit=1

Parámetros principales:

  • format: [html | xml | json | jsonv2]
  • addressdetails: [0 | 1]
  • limit: [0 | n]


Buscar por coordenadas gps


Buscar
Resultado devuelto en json

Código en jquery
var lat = $("#txt_post_latitud").val();
var lon = $("#txt_post_longitud").val();
$.ajax({ url:'https://nominatim.openstreetmap.org/reverse?format=json&lat=' + lat + '&lon=' + lon + '&addressdetails=1&limit=1', success: function(data){ $("#pre_post_lugar2").html(JSON.stringify(data)); },error : function() { callBack(false); } });

Url : https://nominatim.openstreetmap.org/reverse?format=json&lat=' + lat + '&lon=' + lon + '&addressdetails=1&limit=1

Parámetros obligatorios:

  • format
  • lat
  • lon
  • addressdetails

Fuente

https://wiki.openstreetmap.org/wiki/Nominatim#Reverse_Geocoding_.2F_Address_lookup

Comentar

Para poder realizar comentarios. Primero debes inicar sesión o crear una cuenta.