Mündəricat:

Dark Sky API -dən istifadə edərək hava tablosunu yaradın: 5 addım (şəkillərlə)
Dark Sky API -dən istifadə edərək hava tablosunu yaradın: 5 addım (şəkillərlə)

Video: Dark Sky API -dən istifadə edərək hava tablosunu yaradın: 5 addım (şəkillərlə)

Video: Dark Sky API -dən istifadə edərək hava tablosunu yaradın: 5 addım (şəkillərlə)
Video: Canlı 🔥 #SanTenChan 🔥 bir araya gələrək YouTube'da 26 Avqust 2020 canlı olaraq bizimlə böyüyürük 2024, Iyul
Anonim
Image
Image

Dark Sky hava proqnozu və vizualizasiya üzrə ixtisaslaşmışdır. Dark Sky -ın ən maraqlı tərəfi, hava məlumatlarını dünyanın demək olar ki, hər yerindən əldə etmək üçün istifadə edə biləcəyimiz hava API -ləridir. Yalnız hava yağışlı və ya günəşli deyil, həm də temperatur, şeh nöqtəsi, külək dalğası, rütubət, yağış, təzyiq, UV indeksi və daha çoxu, istədiyiniz yerdə, istədiyiniz zaman asanlıqla əldə edilə bilər.

Dark Sky-un super sadə API-dən necə istifadə edəcəyimizi öyrənək. API istifadə etməkdə yenisinizsə, söz verirəm ki, bu, çox asan olacaq! Və əvvəllər API istifadə etmisinizsə, ümid edirəm istifadə etdiyimiz kodla sizə yeni bir şey öyrədə bilərik.

Bu layihə üçün sizə lazım olacaq:

  • Dark Sky API hesabı
  • İlkin dövlət hesabı
  • Raspberry Pi və ya Laptop

Addım 1: Başlayın

Kodu bir araya gətirməyiniz və məlumatları təşkil etməyiniz üçün artıq çox iş görmüşük. Yol boyu bir neçə düzəliş etməyiniz lazım olacaq. Kodumuzda bəzi dəyişikliklər etmək və hava məlumatlarının göndərilməsini çətinləşdirmək istəyirsinizsə, sonsuz imkanlar var!

Sizin üçün hazırladığımız bütün şeyləri əldə etmək üçün depoyu GitHub -dan klonlamalısınız. GitHub, bu kimi layihələri saxlamağa, yenidən nəzərdən keçirməyə və idarə etməyə imkan verən bir xidmətdir. Bu skripti xüsusi bir cihazda işə salmaq istəyəcəksiniz. Raspberry Pi, bu dərs kimi tətbiqləri işə salmaq üçün mükəmməl bir seçimdir.

Depoyu klonlaşdırmaq üçün etməli olduğumuz şey Pi terminalımıza və ya kompüterinizə SSH daxil olan kompüter terminalına daxil olmaq və bu əmri yazmaqdır:

$ git klonu

Daxil edin və bu məlumatı görəcəksiniz:

"Darksky" yə klonlaşdırılır …

uzaqdan: Sayma obyektləri: 2, tamamlandı. uzaqdan: Cəmi 2 (delta 0), təkrar istifadə olunan 0 (delta 0), yenidən istifadə edilən 2 Paketdən çıxarılan obyektlər: 100% (2/2), tamamlandı. Bağlantı yoxlanılır… tamamlandı.

Bunu gördükdən sonra təbrik edirik, GitHub Repo -nu uğurla klonladınız və bu layihəni qurmaq üçün lazım olan bütün sənədlərə sahibsiniz. Növbəti mərhələyə keçməzdən əvvəl, bu qovluğu araşdırmaq və bir neçə əsas əmr satırı əmrini öyrənmək üçün bir az vaxt ayıraq.

Terminalınıza aşağıdakı əmri daxil edin:

$ ls

Bu əmr, hazırda olduğunuz qovluqda mövcud olan hər şeyi siyahıya alır. Bu siyahı, GitHub Repo -nun "darksky" adı altında qovluğumuza uğurla klonlandığını göstərir. Bu qovluqda olanlara nəzər salaq. Bir qovluğa keçmək üçün "cd" yazmaq və sonra getmək istədiyiniz kataloqun adını yazmaq kifayətdir.

Bu vəziyyətdə yazacağıq:

$ cd qaranlıq

Daxil etməyi vurduqda, indi qaranlıq qovluqda olduğumuzu görəcəksiniz. Pi -də hansı faylları quraşdırdığımızı görmək üçün yenidən "ls" yazaq.

README.md darksky.py…

Burada readme sənədimiz və python sənədlərimizin olduğunu görürük. "Nano" əmrindən istifadə edərək darksky.py -yə baxaq. Nano əmri, bu layihənin hər seqmenti üçün bütün python kodumuzun olduğu nano mətn redaktorunu açmağımıza imkan verir. Davam edin və yazın:

$ nano darksky.py

Bu layihə üçün sizin üçün hazırladığımız bütün kodları görə bilərsiniz. Hələlik bu sənədə heç bir dəyişiklik etməyəcəyik, ancaq bu dərslikdə daha sonra nə edəcəyimizi görmək üçün gəzə bilərsiniz.

Addım 2: Dark Sky API -dən istifadə

İlkin vəziyyət
İlkin vəziyyət

Dark Sky API -dən istifadə etmək üçün əvvəlcə öz API açarına ehtiyacınız var. Narahat olmayın, bir API açarı əldə etmək sürətli və pulsuzdur. Veb sayta daxil olmaq və hesab yaratmaq üçün "Pulsuz Sınamaq" düyməsini basmaq kifayətdir.

  • Hər gün pulsuz olaraq 1000 API zəngləri əldə edirsiniz. Pulsuz gündəlik limiti aşan hər bir API tələbi 0.0001 dollara başa gəlir.
  • Bu limit hər gün gecə yarısında avtomatik olaraq sıfırlanır.
  • Proqnoz İstəyi, gələn həftə üçün mövcud hava proqnozunu qaytarır.
  • Zaman Maşını İstəyi keçmişdə və ya gələcəkdə bir tarix üçün müşahidə olunan və ya proqnozlaşdırılan hava şəraitini qaytarır.

Gizli Dark Sky API açarınız belə olacaq: 0123456789abcdef9876543210fedcba.

Aşağıdakı formatda brauzerinizə bir URL yazaraq Dark Sky -a bir API zəng edə bilərsiniz:

api.darksky.net/forecast/ [açar]/ [boylam], [uzunluq]

"Açar" ı Dark Sky API açarınızla və uzunluq/enliyi istədiyiniz ilə əvəz edin. Google Xəritələrə gedərək yerinizi axtarıb uzunluq və enleminizi tapa bilərsiniz. Bu dəyərlər URL -də olacaq. Yuxarıdakı qaranlıq səma URL -ni kopyalayın və giriş açarınız və dəyərlərinizi ünvan çubuğuna əlavə edin.

Bunu etdikdən sonra belə bir şey görəcəksiniz:

gün "," ən yaxınStormDistance ": 57," ən yaxınStormBearing ": 15," precipIntensity ": 0," precipProbability ": 0," temperatur ": 53.9," görünürTemperature ": 53.9," dewPoint ": 29.59," rütubət ": 0.39, "təzyiq": 1022.45, "windSpeed": 3.87, "windGust": 9.25, "windBearing": 259, "cloudCover": 0.01, "uvIndex": 3, "görünürlük": 7.8, "ozon": 309.71}, "dəqiqə ərzində": {"xülasə": "Saat üçün sil" },…

Oxumaq bir az çətin və çətin ola bilər, buna görə tövsiyə etdiyim məlumatların daha oxunaqlı olmasına kömək etmək üçün JSON Formatter istifadə etməkdir. Bunu etdiyiniz zaman belə bir şey görünəcək:

obyekt {9}

Enlem: 37.8267 Boylam: -122.4233 Saat Dilimi: America/Los_Angeles Hal -hazırda {19} Saat: 1550615286 Xülasə: Açıq simge: açıq gün ən yaxın FırtınaMəsafə: 57 ən yaxın Fırtına Rulman: 15 çökmə Yoğunluq: 0 çöküntü Olasılıq: 0 temperatur: 53.9 görünən İstilik: 53.9 şüa nöqtəsi: 29.5 çiy nöqtəsi 0.39 təzyiq: 1022.45 külək Sürət: 3.87 külək Güc: 9.25 külək Rulman: 259 bulud Üstü: 0.01 uv İndeks: 3 görünürlük: 7.8 ozon: 309.71

Yalnız bir API çağırışı etdiniz! Gör nə qədər asan idi? Tək bir kod xətti yazmağa belə ehtiyac qalmadı. API -ləri mənimsədiyinizə görə, məlumat axını hissəsinə keçə bilərik.

Addım 3: İlkin vəziyyət

Bütün hava məlumatlarımızı bir bulud xidmətinə ötürmək və bu xidmətin məlumatlarımızı dizüstü kompüterimizdən və ya mobil cihazımızdan əldə edə biləcəyimiz gözəl bir tablosuna çevirməsini istəyirik. Məlumatlarımızın bir təyinata ehtiyacı var. Bu təyinat olaraq Baş Dövlətdən istifadə edəcəyik.

Addım 1: İlkin Dövlət Hesabına Qeydiyyat

Https://iot.app.initialstate.com saytına daxil olun və yeni bir hesab yaradın. 14 günlük pulsuz sınaq əldə edirsiniz və bir edu e -poçt ünvanı olan hər kəs pulsuz bir tələbə planına qeydiyyatdan keçə bilər.

Addım 2: ISStreamer qurun

Baş Dövlət Python modulunu Raspberry Pi -yə quraşdırın. Əmr əmrində aşağıdakı əmri işlədin:

$ cd/home/pi/$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash

Addım 3: Bəzi AutomagicAddın 2. Adımdan sonra ekranda aşağıdakı çıxışa bənzər bir şey görəcəksiniz:

pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bashPassword: ISStreamer Python Asan Quraşdırmaya Başlayın! Bu bir neçə dəqiqə çəkə bilər, bir az qəhvə götürün:) Ancaq geri dönməyi unutmayın, sonra suallarım olacaq! Easy_install tapıldı: setuptools 1.1.6 Tapılan pip: /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip 1.5.6 pip əsas versiyası: 1 pip kiçik versiya: 5 ISStreamer tapıldı, yenilənir … Tələblər artıq yenidir: ISStreamer /Library/Python/2.7/site-packages-də Təmizlənir … Avtomatik olaraq nümunə bir skript əldə etmək istəyirsiniz? [y/N] Nümunəni harada saxlamaq istəyirsiniz? [default:./is_example.py] Zəhmət olmasa istifadə etdiyiniz İlkin Dövlət tətbiqini seçin: 1. app.initialstate.com 2. [YENİ!] iot.app.initialstate.com Seçim 1 və ya 2 daxil edin: iot.app daxil edin.initialstate.com istifadəçi adı: iot.app.initialstate.com parolunu daxil edin:

Bir nümunə skriptini avtomatik olaraq əldə etmək istədiyinizi soruşduqda bəli "y" qoyun və skriptinizi standart yerdə saxlamaq üçün enter düyməsini basın. Hansı tətbiqdən istifadə etdiyinizə dair sual üçün 2 -ni seçin (2018 -ci ilin noyabrından əvvəl qeydiyyatdan keçməmisinizsə) və istifadəçi adınızı və şifrənizi daxil edin.

Addım 4: Nümunə Skriptini işə salın

Başlanğıc Vəziyyət hesabınıza məlumat axını yarada biləcəyimizdən əmin olmaq üçün test skriptini işə salın. Aşağıdakı əmri yazın:

$ python is_example.py

Addım 6: Nümunə Məlumat

Veb brauzerinizdə İlkin Dövlət hesabınıza qayıdın. Günlük rafınızda solda "Python Stream Örneği" adlı yeni bir məlumat paketi görünməli idi (səhifəni yeniləməyiniz lazım ola bilər). Verilərinizə baxmaq üçün bu kovanı vurun.

Addım 4: Qaranlıq Göy Hava Tablosuna

Qaranlıq Göy Hava Hava Paneli
Qaranlıq Göy Hava Hava Paneli

İndi əyləncəli hissəyə. Hava tablosunu yaratmaq və seçdiyimiz məkanın hava tarixini çəkmək üçün Dark Sky API -dən istifadə etməyə başlamağa hazırıq. Bunu etmək üçün Python skriptindən istifadə edəcəyik: https://github.com/initialstate/darksky/blob/master/darksky.py. Bu skript sadəcə API açarınızdan istifadə edərək Dark Sky API -ni çağırır və hava məlumatlarını müəyyən bir zaman aralığında alır. Həm də bu məlumatları Qaranlıq Göy hava tablosunu yaratmağa imkan verən Başlanğıc Vəziyyət hesabınıza ötürür.

Ya bu skripti Pi -yə kopyalaya bilərsiniz, ya da əvvəllər klonladığımız GitHub deposundan daxil ola bilərsiniz. Bunu yazaraq darksky kataloqunuza keçərək edə bilərsiniz:

$ cd qaranlıq

Buradan hava tablosunu yaratmaq üçün işləyəcəyimiz python faylına daxil ola biləcəksiniz. Çalıştırmadan əvvəl, istədiyiniz parametrləri təyin etməli və açarlarınızı daxil etməlisiniz. Nano yazaraq darksky.py faylına yazın:

$ nano darksky.py

Sonra skriptin yuxarısına yaxın olan bölməni düzəldin:

# --------- İstifadəçi Ayarları ---------

CITY = "Nashville" GPS_COORDS = "36.1628414, -86.780199" DARKSKY_API_KEY = "KOYU SKY API KEYİNİZİ BU YERDƏ" BUCKET_NAME = ": partly_sunny:" + ŞƏHƏR + "Hava" BUCKET_KEYCESS = "ds1" BURADA "DAKİKALARIN_OXUŞLARINDA = 15 # ---------------------------------

İstədiyiniz GPS koordinatlarını və şəhər adını təyin etməlisiniz. Qaranlıq Sky API açarınızı və İlkin Dövlət hesabınıza giriş açarınızı daxil etməlisiniz, əks halda məlumatlarınız heç yerə getməyəcək. MINUTES_BETWEEN_READS parametri, skriptinizin hava məlumatı üçün Dark Sky API -ni nə qədər tez -tez sorğu -sual edəcəyini təyin edəcək. 15 dəqiqə uzun müddətli gözəl bir fasilə təmin edir. Qısa müddətli testlər üçün bunu 0,5 dəqiqəyə təyin edə bilərsiniz. Dəyişikliklərinizi edin, sonra çıxmaq və saxlamaq üçün nəzarət+X daxil edin.

Parametrlərinizi təyin etdikdən sonra skriptinizi işə salmağa hazırsınız:

$ python darksky.py

Pi-yə daxil olsanız və uzun müddət bu skriptin fasiləsiz işləməsini istəsəniz, nohup əmrindən (asma) istifadə edə bilərsiniz:

$ nohup python darksky.py &

Bu skript, hava məlumatlarını oxumaq və Baş Dövlətə göndərməklə kifayətlənməyəcək. Bu skript, tablosunu bir az daha sərin etmək üçün Initial State alətlərində quraşdırılmış emoji dəstəyindən istifadə edəcək. Hava vəziyyətini indiki -> simvolundan götürmək və bunu weather_icon funksiyasında emoji işarəsinə çevirmək üçün istifadə olunan məntiqi görə bilərsiniz. Moon_icon funksiyasındakı ay fazası və wind_dir_icon funksiyasında külək istiqaməti üçün bənzər bir şey olur.

Addım 5: Nəticə

Nəticə
Nəticə
Nəticə
Nəticə

İlkin Hesab hesabınıza gedin və məlumatlarınıza baxın. Bütün faiz dəyərlərimi qövs ölçü cihazlarına, yağıntıları maye ölçüyə və temperaturu bir temperatur ölçücüyə dəyişdim. İstənilən növ Karo tipinə keçə və ölçü və xətt cədvəlləri üçün rənglərinizi seçə bilərsiniz. Tablosunuzu qaranlıq və ya işıqlı edə və son məhsulu yerləşdirilmiş bir iFrame istifadə edərək bir veb saytına yerləşdirə bilərsiniz.

Tablosuna düzeni ümumi bir paylaşımdan tablosunuz olaraq istifadə etmək istəyirsinizsə, buradakı təlimatları izləyərək məlumat paketinizə bir düzəliş idxal edə bilərsiniz. Daha çox kontekst vermək üçün tablosuna bir fon şəkli əlavə edə bilərsiniz.

Tablosumuzun ümumi paylaşım URL'si https://go.init.st/0hw08py -dir.

İndi Dark Sky API -ni mənimsəmisiniz, imkanlar sonsuzdur! Başlamaq üçün araşdırmaq üçün məhdud sayda pulsuz API var.

Tövsiyə: