28.04.2025

Enlem boylam bilgisinden adres sorgulama

Bir ara lazım oldu, enlem boylam bilgisinden adresleri çıkarabilir miyim diye bir baktım. Coğrafi adres bilgisinin enlem boylama dönüştürülmesine geocoding, tam tersi işleme (yani enlem boylam bilgisinin coğrafi adres bilgisine dönüştürülmesine) de reverse geocoding deniyormuş. Çevrim içi hizmetlerden geoapify.com'u buldum. Bir API anahtarı alınması karşılığında bu hizmetleri veriyorlar.

Daha önce şu yazımda da IP adresinden coğrafi adres bilgisinin coğrafi adrese dönüştürülmesi için ipstack.com'un API'lerini kullanan bir örnek hakkında yazmıştım. Mantık aynı, bir çevrim içi hizmet var, bu hizmeti kullanmak için bir hesap açarak API anahtarı ediniyoruz. Daha sonra bir adreste REST sorgusu gönderip JSON alıyoruz.

$enlem ve $boylam değişkenlerinde koordinatlarımızın, $api_key değişkeninde de edindiğimiz anahtarın olduğunu varsayalım. REST sorgusunun gönderileceği adresimiz şöyle yapılandırılacak:

$url="https://api.geoapify.com/v1/geocode/reverse?lat=$enlem&lon=$boylam&apiKey=$api_key"

Powershell kullanarak bir REST sorgusu ile göndermek için Invoke-RestMethod kullanabiliriz:

$response = Invoke-RestMethod -Uri $url -method get

$response nesnesinin içinde features[0].properties nesnesinin altında adres bilgisi gelecek. Örnek olarak

Ekrana $response.features[0].properties öğelerini yazdırdığımızda dönen alanları görebiliriz. Şehir bilgisi için

$baz.City

Ülke bilgisi için

$baz.Country

kullanılabilir. 

Hiç yorum yok:

Yorum Gönder