yahoo-weather-api

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme


Merhaba bu yazımızda Yahoo’nun sunduğu hava durumu api’sinden İstanbuldaki hava durumu verisini çekecek bir Form uygulaması gerçekleştireceğiz.

1. Adım : Yahoo Kayıt


Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 1 Yahoo Kayıt

Yahoo hesabınız yoksa kayıt olun sonra verdiğim linke tıklayarak burada hesabınızı açın eğer hesabınız varsa doğrudan linke tıklayabilirsiniz(Yahoo bilgisayarda giriş yapılmış durumda ise linkte gideceğiniz sitede de login yapılmış bir şekilde gelebilir)

https://developer.yahoo.com/?guccounter=1

2. Adım : Yahoo Hava Durumu  


Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 2 Yahoo Kayıt

Linke tıkladığınızda açılan sitenin üstündeki header menu’de bulunan API’s menu buttonuna tıklayın.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme

Resim 3 Yahoo Kayıt

Açılan sayfada Weather isimli API Yahoo’nun hava durumu API’sidir. Altındaki Documentation isimli linke tıklarsanız kullanımı ile ilgili detaylı dökümantasyona yönlendirilirsiniz. Biz şimdi Overview isimli linke tıklayalım.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 4 Yahoo Kayıt

Açılan sayfada resimde gördüğünüz Create an App key butonuna tıkayın. Ama bu sayfayı açık tutun ekranda gözüken 1. adım olan get started aşamasını tamamladıktan sonra 2. aşama için buraya geri döneceğiz.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 5 Yahoo Kayıt

Açılan form sayfasını benim doldurduğum gibi doldurabilirsiniz. Ardından Create App butonuna tıklayın.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 6 Yahoo Kayıt

AppID, ClientID ve ClientSecret bilgilerinizi bir yere kaydedin daha sonra kullanacağız.

Size öncesinde kapatmayın dediğim sayfaya geri dönüyoruz artık 1. aşama olan get started aşaması tamamlandı, şimdi 2. aşamaya yani Whitelist your app aşamasını gerçekleştireceğiz.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 7 Yahoo Kayıt

bu sayfadan tekrar ayrılmadan buradaki linki açıyoruz.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 7 Yahoo Kayıt

Açılan sayfayı kendi bilgilerinizle doldurun.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 8 Yahoo Kayıt

Gelen maildeki linke tıklayarak doğrulayın ve açılan sayfada bu api’nin farklı programlama dillerinde kullanımına ilişkin üzerinden bilgi bulabilirsiniz. Doğrulama işlemini tamamladığımızda 3. adımımız olan Follow Our Documentation aşamasına geçebiliriz.

Yahoo Hava Durumu Api Postman Üzerinden Kullanımı


Sağdaki linke tıklayınız ->  documentation.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 9 Yahoo Api Kullanım

Açılan dökümantasyonda Api’nin kullanımına dair bilgiler bulabilirsiniz. Biz üstteki resimde belirttiğimiz linki kullanacağız.

Öncelikle Api’miz çalışıyor mu diye rest api derleyebilen bir platformda deneyelim. Biz postman kullanacağız.(Siz denemek zorunda değilsiniz)

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 10 Yahoo Api Kullanımı

Postmande boş bir get request açarız.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 11 Yahoo Api Kullanımı

Linkimizi yapıştırırız.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 12 Yahoo Api Kullanımı

Authorization bölümünden bağlanma tipi olarak(Type) olarak OAuth 1.0 seçeneğini seçin. Resim bla isimli resimdeki bilgilerimizden ClientID değerini Consumer Key değerinin yerine Client Secret değerini Consumer Secret değerinin olduğu yere ekleyin ve Send butonuna basın.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 12 Yahoo Api Kullanımı

Resimde görüldüğü gibi altta hava durumu dataları çıkacaktır ama İstanbul’un değil ABD’nin Sunyvale şehrinin hava durumu verileri geldi bu normal bir durum çünkü parametre olarak İstanbulu göndermedik.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 12 Yahoo Api Kullanımı

Parametre değerimizi düzeltmek için Params kısmına tıklayın ve location key değerini “istanbul,tr” olarak değiştirin data geri dönüş formatımızın json olarak kalmasını istediğim için format değerinde bir değişiklik yapmadım. Sonuç olarak artık İstanbul şehrinin hava durumu verisi dönüyor. Yahoo Weather Api kullanımı(parametreler, kullanılabilecek URL değerleri, geri dönüş formatı ve daha birçok özelliği hakkında bilgi edinmek için daha önce belirttiğim documentation sayfasını inceleyebilirsiniz)

Yahoo Hava Durumu Api C# Form Üzerinden Kullanımı


Şimdi sizlere Postman derleyicisinin bize sunduğu ve işinizi çok kolaylaştıracak bir trick göstericem.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 13 Api Kullanımı

Yaptığınız postman sorgusu bittiğinde düzgün bir şekilde sonuç alıyorsanız sağ üstte bulunan Code yazısının üzerine tıklayınız.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 14 Api Kullanımı

Böyle bir kod bloğu açılacak bu kod bloğunu C# üzerinde projenize RestSharp.dll kütüphanesini ekledikten sonra “response“ isimli değerinizi istediğiniz gibi kullanabilirsiniz.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 15 Api Kullanımı

Yeni bir VisualStudio Windows Form projesi açın ve arayüze sadece bir richTextBox ekleyin daha sonra forma çift tıklayarak form load metodunu oluşturun.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 16 Api Kullanımı

Postman’de oluşturduğumuz kod bloğunu kullanmadan önce Manage Nuget Peckages’ e girin ve RestSharp kütüphanesini projenize ekleyin.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 17 Api Kullanımı

Using RestSharp; kodunu kütüphaneyi formunuzda aktifleştirmek için kullanın ve Postman’deki oluşturduğumuz kodu load metoduna yapıştırın. Ve richTextBox değerimizin textine response değerimizin contentini yani içeriğini gönderelim.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 18 Api Kullanımı

Gördüğünüz gibi içeriğimiz geldi artık bu içeriği istediğiniz gibi filtrelemek almak sizin elinizde ben bu yazıda çektiğim verileri filtrelemeyi ve istediğim gibi göstermeyi atladım.

Hava Durumu Web Api Kullanarak Hava Durumunu Çekme
Resim 18 Api Kullanımı

Resim 18’de görüldüğü gibi projenin arayüze filtreleme yaparak veri çeken versiyonunu incelemek ve indirmek için linke tıklayınız
(Not : Github linkindeki projede extra olarak Newtonsoft.json kütüphanesi kullanılmıştır)

https://github.com/yusufenesProject/YahooWeatherApi

Bu yazımda sizlere başka geliştiricelerin geliştirdiği public bir web api’yi nasıl kullanabileceğinizi anlatmaya çalıştım. Bir sonraki yazımda görüşmek üzere.


Comment (1)

Write a Message