Tengo una lista de 2000 direcciones como esta:
Macquarie Park, New South Wales
Kitami, Hokkaido
Hachioji, Tokyo
Pokemon Inc. Asahi Bldg. 7F 3-2-6 Asakusabashi Taito-ku, Tokyo 111-0053 Japan
東京都港区
Y quiero mostrarlos en un mapa sin enviar estas direcciones a través de Internet .
Geocodificación de direcciones:
Formato de salida:
.osm
// la salida .obf
del .kml
archivo está bien.Requisitos:
Esto podría ser posible con la API de OpenStreetMap , con licencia de ODbL .
No lo he usado por un tiempo, pero básicamente defines un rectángulo ( bbox
, cuadro delimitador) de dos puntos (S, N, W y E). Dado que el área máxima del cuadro delimitador es limitada, deberá repetir la consulta para partes pequeñas del mundo (donde las áreas con el tamaño de Alemania normalmente están bien).
Luego defines las condiciones de lo que quieres recibir. Para las ciudades, place=city
sería tal condición. Desafortunadamente, la categorización de las ciudades puede ser específica del país, por lo que debe leer la documentación y averiguarlo.
Ejemplo de consulta de API para ciudades en Alemania (aproximadamente, ya que tiene un rectángulo):
http://www.overpass-api.de/api/xapi?node[bbox=5.87,47.27,15.04,55.12][place=city]
El resultado es bastante pequeño (155 kB) y contiene información relevante:
<node id="17193023" lat="49.5981208" lon="11.0036532">
<tag k="ele" v="279"/>
<tag k="is_in" v="Mittelfranken,Bayern,Bundesrepublik Deutschland,Europe"/>
<tag k="is_in:country" v="Germany"/>
<tag k="is_in:country_code" v="DE"/>
...
<tag k="name" v="Erlangen"/>
<tag k="name:ta" v="எர்லங்கன்"/>
...
<tag k="place" v="city"/>
<tag k="population" v="105624"/>
...
</node>
Esta es una respuesta porque:
name:ta
lon
y lat
)Lamento que esta respuesta aún necesite programación personalizada, pero teniendo en cuenta la antigüedad de la pregunta y aún no hay respuestas, supongo que su solicitud es muy específica y solo puede resolverse así.
Cazador de ciervos
Cazador de ciervos
Nicolás Raúl
Nicolás Raúl