Obsah:
- Krok 1: Začíname
- Krok 2: Použitie rozhrania Dark Sky API
- Krok 3: Počiatočný stav
- Krok 4: Hlavný panel predpovedí počasia tmavej oblohy
- Krok 5: Záver
Video: Vytvorte informačný panel o počasí pomocou rozhrania Dark Sky API: 5 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
Dark Sky sa špecializuje na predpovedanie počasia a vizualizáciu. Najlepším aspektom Dark Sky je ich API pre počasie, ktoré môžeme použiť na získanie údajov o počasí takmer z akéhokoľvek miesta na svete. Nie je to len daždivé alebo slnečné počasie, ale teplota, rosný bod, nárazový vietor, vlhkosť, zrážky, tlak, UV index a ďalšie, všetko ľahko dostupné kdekoľvek, kedykoľvek budete chcieť.
Naučme sa používať super jednoduché API Dark Sky. Ak ste novým používateľom API, sľubujem vám, že to bude veľmi jednoduché! A ak ste už predtým používali API, dúfam, že vás pomocou kódu, ktorý sme použili, naučíme niečo nové.
Čo budete potrebovať k tomuto projektu:
- Účet API Dark Sky
- Počiatočný stavový účet
- Raspberry Pi alebo prenosný počítač
Krok 1: Začíname
Už sme vykonali veľa práce na nohách, aby ste zostavili kód a usporiadali informácie. Budeme len potrebovať, aby ste na ceste urobili niekoľko úprav. Ak chcete trochu výzvu, urobiť nejaké zmeny v našom kóde a aké údaje o počasí sa odosielajú, existujú neobmedzené možnosti!
Aby ste získali všetky veci, ktoré sme pre vás pripravili, budete musieť klonovať úložisko z GitHub. GitHub je služba, ktorá nám umožňuje ukladať, revidovať a spravovať projekty ako je tento. Tento skript budete chcieť spustiť na vyhradenom zariadení. Raspberry Pi je perfektnou možnosťou na spustenie aplikácií, ako je tento návod.
Na klonovanie úložiska potrebujeme prejsť do terminálu nášho Pi alebo terminálu vašich počítačov, ktorý je SSH’d, do vášho pí a zadať tento príkaz:
$ git klon
Stlačte Enter a uvidíte tieto informácie:
Klonovanie do „darksky“…
diaľkové ovládanie: Počítanie predmetov: 2, hotovo. diaľkové ovládanie: celkom 2 (delta 0), opätovne použité 0 (delta 0), opakovane použité v balíku 2 Rozbaľovanie predmetov: 100% (2/2), hotovo. Kontrola pripojenia … hotovo.
Akonáhle to uvidíte, potom gratulujeme, úspešne ste naklonovali GitHub Repo a máte všetky potrebné súbory na zostavenie tohto projektu. Predtým, ako prejdeme k ďalšiemu kroku, urobme si chvíľu na preskúmanie tohto adresára a naučme sa niekoľko základných príkazov príkazového riadka.
Do terminálu zadajte nasledujúci príkaz:
$ ls
Tento príkaz uvádza všetko, čo je k dispozícii v adresári, v ktorom sa práve nachádzate. Tento zoznam ukazuje, že naše GitHub Repo bolo úspešne klonované do nášho adresára pod názvom „darksky“. Pozrime sa, čo je v tomto adresári. Na presun do adresára stačí napísať „cd“a potom napísať názov adresára, do ktorého sa chcete dostať.
V tomto prípade napíšeme:
$ cd darksky
Akonáhle stlačíme kláves Enter, uvidíte, že sme teraz v adresári darksky. Znova zadáme „ls“, aby sme zistili, ktoré súbory sme nainštalovali do nášho súboru pi.
README.md darksky.py…
Tu vidíme, že máme dokument readme a súbory python. Pozrime sa na darksky.py pomocou príkazu „nano“. Príkaz nano nám umožňuje otvoriť nano textový editor, kde máme všetok náš kód pythonu pre každý segment tohto projektu. Pokračujte a napíšte:
$ nano darksky.py
Tu môžete vidieť všetok kód, ktorý sme pre vás pre tento projekt pripravili. V tomto dokumente zatiaľ nebudeme vykonávať žiadne zmeny, ale pokojne sa posuňte a zistite, čo budeme robiť ďalej v tomto návode.
Krok 2: Použitie rozhrania Dark Sky API
Na používanie rozhrania Dark Sky API potrebujete najskôr vlastný kľúč API. Nebojte sa, získanie kľúča API je rýchle a bezplatné. Všetko, čo musíte urobiť, je navštíviť webovú stránku a kliknutím na tlačidlo „Vyskúšať zadarmo“si vytvorte účet.
- Každý deň získate 1 000 hovorov API zadarmo. Každá žiadosť API presahujúca bezplatný denný limit stojí 0,0001 USD.
- Tento limit sa automaticky resetuje každý deň o polnoci UTC.
- Žiadosť o predpoveď vracia aktuálnu predpoveď počasia na nasledujúci týždeň.
- Žiadosť Time Machine vracia pozorované alebo predpovedané poveternostné podmienky pre dátum v minulosti alebo budúcnosti.
Váš tajný kľúč API služby Dark Sky bude vyzerať takto: 0123456789abcdef9876543210fedcba.
Volanie rozhrania API na Dark Sky môžete uskutočniť pomocou rozhrania API zadaním adresy URL do svojho prehliadača v nasledujúcom formáte:
api.darksky.net/forecast/[key]/[latitude], [zemepisná dĺžka]
Nahraďte „kľúč“svojim kľúčom API Dark Sky a zemepisnou šírkou/šírkou čímkoľvek chcete. Zemepisnú dĺžku a šírku nájdete v Mapách Google a vyhľadaním svojej polohy. Tieto hodnoty budú v adrese URL. Skopírujte a prilepte vyššie uvedenú adresu URL tmavej oblohy pomocou prístupového kľúča a hodnôt pridaných do panela s adresou.
Akonáhle to urobíte, uvidíte niečo také:
deň "," nearestStormDistance ": 57," nearestStormBearing ": 15," precipIntensity ": 0," precipProbability ": 0," teplota ": 53,9," zdanlivá teplota ": 53,9," rosný bod ": 29,59," vlhkosť ": 0,39, „tlak“: 1022,45, „windSpeed“: 3,87, „windGust“: 9,25, „windBearing“: 259, „cloudCover“: 0,01, „uvIndex“: 3, „viditeľnosť“: 7,8, „ozón“: 309,71}, "minúta": {"zhrnutie": "Jasné za hodinu.", "ikona": "jasný deň", "údaje": [{"čas": 1550615280, "precipitntency": 0, "precipProbability": 0 },…
Môže to byť trochu zdrvujúce a ťažko čitateľné, takže odporúčam použiť formátovač JSON, ktorý pomôže zlepšiť čitateľnosť údajov. Keď to urobíte, bude to vyzerať takto:
objekt {9}
zemepisná šírka: 37.8267 zemepisná dĺžka: -122,4233 časové pásmo: Amerika/Los_Angeles aktuálne {19} čas: 1550615286 zhrnutie: Vymazať ikonu: jasný deň nearestStormVzdialenosť: 57 najbližšíchBúrka: 15 zrážokHustota: 0 zrážok Pravdepodobnosť: 0 teplota: 53,9 zrejmé Teplota: 53,9 rosný bod: 29,59 0,39 tlak: 1022,45 vietor Rýchlosť: 3,87 vietor Nápor: 9,25 vietor Nosenie: 259 mrakov Pokrytie: 0,01 uv Index: 3 viditeľnosť: 7,8 ozónu: 309,71
Práve ste volali API! Vidíte, aké ľahké to bolo? Nemuseli ste napísať ani jeden riadok kódu. Teraz, keď ste zvládli API, môžeme prejsť k časti streamovania údajov.
Krok 3: Počiatočný stav
Chceme streamovať všetky naše údaje o počasí do cloudovej služby a nechať túto službu, aby z našich údajov vytvorila pekný informačný panel, ku ktorému budeme mať prístup z prenosného počítača alebo mobilného zariadenia. Naše údaje potrebujú cieľ. Ako cieľ použijeme počiatočný stav.
Krok 1: Zaregistrujte sa na počiatočný stav účtu
Prejdite na https://iot.app.initialstate.com a vytvorte si nový účet. Získate 14 -dňovú bezplatnú skúšobnú verziu a ktokoľvek s e -mailovou adresou edu sa môže zaregistrovať na bezplatný študentský program.
Krok 2: Nainštalujte ISStreamer
Nainštalujte modul Počiatočný stav Python na svoj Raspberry Pi. Na príkazovom riadku spustite nasledujúci príkaz:
$ cd/home/pi/$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Krok 3: Vyrobte si Automagic Po kroku 2 uvidíte na obrazovke niečo podobné nasledujúcemu výstupu:
pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bashHeslo: Začiatok ISStreamer Python Jednoduchá inštalácia! Inštalácia môže trvať niekoľko minút, dajte si kávu:) Ale nezabudnite sa vrátiť, otázky budem mať neskôr! Nájdená jednoduchá inštalácia: setuptools 1.1.6 Nájdená pip: pip 1.5.6 z /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip major version: 1 pip minor version: 5 ISStreamer nájdený, aktualizuje sa … Požiadavka je už aktuálna: ISStreamer v /Library/Python/2.7/site-packages Čistenie … Chcete automaticky získať ukážkový skript? [y/N] Kam chcete uložiť príklad? [predvolené:./is_example.py] Vyberte aplikáciu, ktorú používate v počiatočnom stave: 1. app.initialstate.com 2. [NOVINKA!] iot.app.initialstate.com Zadajte voľbu 1 alebo 2: Zadajte iot.app Používateľské meno.initialstate.com: Zadajte heslo na adrese iot.app.initialstate.com:
Na otázku, či chcete automaticky získať ukážkový skript, zadajte „y“na áno a stlačením klávesu Enter uložte skript na predvolené miesto. Na otázku, ktorú aplikáciu používate, zvoľte 2 (pokiaľ ste sa neprihlásili do novembra 2018) a zadajte svoje užívateľské meno a heslo.
Krok 4: Spustite vzorový skript
Spustite testovací skript, aby ste sa uistili, že môžeme vytvoriť tok údajov pre váš účet Počiatočný stav. Napíšte nasledujúci príkaz:
$ python is_example.py
Krok 6: Príklad údajov
Vo webovom prehliadači sa vráťte k svojmu počiatočnému účtu. Nový priečinok s údajmi s názvom „Príklad Python streamu“sa mal zobraziť vľavo na poličke denníka (možno budete musieť stránku obnoviť). Kliknutím na tento segment zobrazíte svoje údaje.
Krok 4: Hlavný panel predpovedí počasia tmavej oblohy
Teraz k zábavnej časti. Sme pripravení začať používať rozhranie Dark Sky API na vytvorenie informačného panela o počasí a zachytenie histórie počasia pre miesto, ktoré si zvolíme. Na tento účel použijeme skript Python: https://github.com/initialstate/darksky/blob/master/darksky.py. Tento skript jednoducho zavolá API Dark Sky pomocou vášho kľúča API a získa informácie o počasí v určenom časovom intervale. Tiež streamuje tieto údaje na váš účet Počiatočný stav, čo vám umožní vytvoriť informačný panel o počasí Dark Sky.
Tento skript môžete buď skopírovať do svojho Pi, alebo k nemu získať prístup prostredníctvom úložiska GitHub, ktoré sme predtým klonovali. Môžete to urobiť tak, že sa zmeníte do svojho adresára darksky zadaním:
$ cd darksky
Odtiaľto budete mať prístup k súboru python, ktorý spustíme a vytvoríme náš informačný panel o počasí. Pred spustením je potrebné nastaviť požadované parametre a vložiť kľúče. Nano do súboru darksky.py zadaním:
$ nano darksky.py
Potom upravte sekciu v hornej časti skriptu:
# --------- Používateľské nastavenia ---------
CITY = "Nashville" GPS_COORDS = "36.1628414, -86.780199" DARKSKY_API_KEY = "UMIESTNIŤ KĽÚČ API API TEMA SKY" BUCKET_NAME = ": částečně_sunny:" + CITY + "Počasie" BUCKET_KEY = "ds1" ACCESS_ KĽÚČTE TU "MINUTES_BETWEEN_READS = 15 # ---------------------------------
Musíte nastaviť požadované súradnice GPS a názov mesta. Musíte tiež vložiť svoj kľúč API Dark Sky a prístupový kľúč k počiatočnému stavu, inak vaše údaje nikam nepôjdu. Parameter MINUTES_BETWEEN_READS nastaví, ako často bude váš skript zisťovať informácie o počasí pre API Dark Sky. 15 minút poskytuje pekný dlhodobý interval. V záujme krátkodobého testovania ho môžete nastaviť na 0,5 minúty. Vykonajte zmeny a potom stlačením klávesu Ctrl+X ukončite a uložte.
Akonáhle máte nastavené parametre, ste pripravení spustiť skript:
$ python darksky.py
Ak ssh'ujete do svojho Pi a chcete nechať tento skript bežať neprerušene dlhší čas, môžete použiť príkaz nohup (bez zavesenia) nasledovne:
$ nohup python darksky.py &
Tento skript urobí o niečo viac, ako len číta údaje o počasí a odošle ich do počiatočného stavu. Tento skript bude využívať podporu emodži zabudovanú v nástrojoch počiatočného stavu, aby bol ovládací panel o niečo chladnejší. Logiku, ktorá sa používa na prevzatie stavu počasia, môžete vidieť na ikone aktuálne -> a previesť ho na token emoji vo funkcii weather_icon. Niečo podobné sa deje pre fázu mesiaca vo funkcii moon_icon a smer vetra vo funkcii wind_dir_icon.
Krok 5: Záver
Prejdite na svoj účet Počiatočný stav a pozrite sa na svoje údaje. Zmenil som všetky svoje percentuálne hodnoty na oblúkové merače, zrážky na kvapalinomer a teplotu na teplomer. Môžete zmeniť na akýkoľvek druh dlaždíc a pre obrysy a spojnicové grafy si vybrať farby. Hlavný panel môžete zmeniť na tmavý alebo svetlý a vložiť konečný produkt na webovú stránku pomocou vloženého rámca iFrame.
Ak chcete ako hlavný panel použiť rozloženie hlavného panela z verejnej zdieľanej položky, môžete rozloženie importovať do vedra s údajmi podľa týchto pokynov. Na svoj informačný panel môžete pridať obrázok na pozadí, aby mal lepší kontext.
Verejná zdieľaná adresa URL pre náš informačný panel je
Teraz, keď ovládate API Dark Sky, sú možnosti nekonečné! Na preskúmanie je k dispozícii neobmedzené množstvo bezplatných rozhraní API online, takže začnite.
Odporúča:
Výpočet vlhkosti, tlaku a teploty pomocou rozhrania BME280 a fotónového rozhrania .: 6 krokov
Výpočet vlhkosti, tlaku a teploty pomocou BME280 a fotónového rozhrania: Stretávame sa s rôznymi projektmi, ktoré vyžadujú monitorovanie teploty, tlaku a vlhkosti. Uvedomujeme si, že tieto parametre skutočne zohrávajú zásadnú úlohu pri odhade pracovnej účinnosti systému pri rôznych atmosférických podmienkach
Hlavný panel rozhrania API kvality vzduchu AirVisual: 5 krokov
Panel AirVisual Air Quality API: AirVisual (https://www.airvisual.com) je webová stránka, ktorá poskytuje údaje o kvalite ovzdušia po celom svete. Majú API, ktoré použijeme na získanie údajov o kvalite ovzdušia na odoslanie na informačný panel. S týmto rozhraním API budeme interagovať podobne, ako sme pracovali s
Rozpoznávanie reči pomocou rozhrania Google Speech API a Pythonu: 4 kroky
Rozpoznávanie reči pomocou rozhrania Google Speech API a Pythonu: Rozpoznávanie reči Rozpoznávanie reči je súčasťou spracovania prirodzeného jazyka, ktoré je podoborom umelej inteligencie. Zjednodušene povedané, rozpoznávanie reči je schopnosť počítačového softvéru identifikovať slová a frázy v hovorenom jazyku
LTE Arduino GPS Tracker + informačný panel IoT (časť 1): 6 krokov (s obrázkami)
LTE Arduino GPS Tracker + Dashboard IoT (časť 1): Úvod Čo sa deje, chlapci! Tento návod nadväzuje na môj prvý návod na používanie štítu Botletics LTE/NB-IoT pre Arduino, takže ak ste to ešte neurobili, prečítajte si ho a získajte dobrý prehľad o tom, ako štít používať a čo to všetko je
LTE Arduino GPS Tracker + informačný panel IoT (časť 2): 6 krokov (s obrázkami)
LTE Arduino GPS Tracker + informačný panel IoT (časť 2): Úvod & Časť 1 Rekapitulácia, je čas na ďalší pokyn na sledovači GPS SIM7000 s Arduino a LTE! Ak ste to ešte neurobili, prečítajte si úvodný návod k štítu Botletics SIM7000 CAT-M/NB-IoT a prečítajte si to na Pa