Cree la API de Google para buscar la latitud y la longitud del código postal

Un usuario Pregunto ✅

Anónimo

Tengo una tabla con códigos postales. Me gustaría buscar la latitud y la longitud usando una API de Google (veo muchas publicaciones sobre esto). Nunca creé una API. ¿Cómo puedo crear una API de Google para darme la latitud y la longitud de un código postal en una tabla?

mahoneypat

Consulte estos pasos / ejemplos para obtener latitud larga de un código postal con la API de codificación geográfica de Google

1. Siga estas instrucciones para crear una cuenta de facturación (no se preocupe, obtendrá bastante crédito gratis, pero puede rastrearlo para asegurarse), habilite la API de geocodificación y obtenga una clave de API (manténgala confidencial).

https://developers.google.com/maps/gmp-get-started#api-key

2. Tener una tabla con una columna de código postal en texto formato (ya lo tienes).

3. Cree un parámetro de texto llamado MyApiKey (distingue entre mayúsculas y minúsculas) y coloque su nueva clave de API en él.

4.Haga una nueva consulta en blanco y pegue este código M para hacer una función y llámelo fxGetLongLatFromZip

dejar
Fuente = (código postal como texto) => dejar
Source = Json.Document (Web.Contents («https://maps.googleapis.com/maps/api/geocode/json?address=» & zipcode & «& key =» & MyApiKey)),
resultados = Fuente[results],
resultados1 = resultados {0},
geometría = resultados1[geometry],
ubicación = geometría[location]
en
localización
en
Fuente

5. En su tabla con códigos postales, agregue una columna presionando el botón Invocar función personalizada. Elija su columna Zip como entrada.

6. Expanda el registro devuelto y siga explorando el JSON hasta que encuentre los valores Long y Lat.

7. Disfrute de sus datos de long lat.

8. Marque esto como la solución y felicite.

Consulte este ejemplo de consulta M con algunos códigos postales para probarlo y ver los pasos de exploración para llegar a long y lat de la respuesta JSON de la API de Google.

dejar
Source = Table.FromRows (Json.Document (Binary.Decompress (Binary.FromText («i45WMjG3NDBUitWBsIzgLGM4y0QpNhYA», BinaryEncoding.Base64), Compression.Deflate)), let _t = (texto meta nulable) [Serialized.Text = true]) en la tabla de tipos [Zip = _t]),
# «Changed Type» = Table.TransformColumnTypes (Fuente, {{«Zip», escriba texto}}),
# «Función personalizada invocada» = Table.AddColumn (# «Tipo modificado», «fxGetLongLatFromZip», cada fxGetLongLatFromZip ([Zip])),
# «Expanded fxGetLongLatFromZip» = Table.ExpandRecordColumn (# «Función personalizada invocada», «fxGetLongLatFromZip», {«lat», «lng»}, {«lat», «lng»}),
# «Changed Type1» = Table.TransformColumnTypes (# «Expanded fxGetLongLatFromZip», {{«lat», type number}, {«lng», type number}})
en
# «Tipo1 modificado»

Si esto le funciona, márquelo como la solución. Las felicitaciones también son apreciadas. Por favor avíseme si no es así.

Saludos,

Palmadita

mahoneypat

Consulte estos pasos / ejemplos para obtener latitud larga de un código postal con la API de codificación geográfica de Google

1. Siga estas instrucciones para crear una cuenta de facturación (no se preocupe, obtendrá bastante crédito gratis, pero puede rastrearlo para asegurarse), habilite la API de geocodificación y obtenga una clave de API (manténgala confidencial).

https://developers.google.com/maps/gmp-get-started#api-key

2. Tener una tabla con una columna de código postal en texto formato (ya lo tienes).

3. Cree un parámetro de texto llamado MyApiKey (distingue entre mayúsculas y minúsculas) y coloque su nueva clave de API en él.

4.Haga una nueva consulta en blanco y pegue este código M para hacer una función y llámelo fxGetLongLatFromZip

dejar
Fuente = (código postal como texto) => dejar
Source = Json.Document (Web.Contents («https://maps.googleapis.com/maps/api/geocode/json?address=» & zipcode & «& key =» & MyApiKey)),
resultados = Fuente[results],
resultados1 = resultados {0},
geometría = resultados1[geometry],
ubicación = geometría[location]
en
localización
en
Fuente

5. En su tabla con códigos postales, agregue una columna presionando el botón Invocar función personalizada. Elija su columna Zip como entrada.

6. Expanda el registro devuelto y siga explorando el JSON hasta que encuentre los valores Long y Lat.

7. Disfrute de sus datos de latitud larga.

8. Marque esto como la solución y felicite.

Consulte este ejemplo de consulta M con algunos códigos postales para probarlo y ver los pasos de exploración para llegar a long y lat de la respuesta JSON de la API de Google.

dejar
Fuente = Table.FromRows (Json.Document (Binary.Decompress (Binary.FromText («i45WMjG3NDBUitWBsIzgLGM4y0QpNhYA», BinaryEncoding.Base64), Compression.Deflate)), let _t = ((meta texto anulable) [Serialized.Text = true]) en la tabla de tipos [Zip = _t]),
# «Changed Type» = Table.TransformColumnTypes (Fuente, {{«Zip», escriba texto}}),
# «Función personalizada invocada» = Table.AddColumn (# «Tipo modificado», «fxGetLongLatFromZip», cada fxGetLongLatFromZip ([Zip])),
# «Expanded fxGetLongLatFromZip» = Table.ExpandRecordColumn (# «Función personalizada invocada», «fxGetLongLatFromZip», {«lat», «lng»}, {«lat», «lng»}),
# «Changed Type1» = Table.TransformColumnTypes (# «Expanded fxGetLongLatFromZip», {{«lat», type number}, {«lng», type number}})
en
# «Tipo1 modificado»

Si esto le funciona, márquelo como la solución. Las felicitaciones también son apreciadas. Por favor avíseme si no es así.

Saludos,

Palmadita

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *