Experimenteren met de Raspberry Pi Zero – Het weerbericht (deel – 8)

Naast het logo van Radio Caroline wat op de display wordt gepresenteerd lijkt het mij leuk om een afbeelding van het huidige Weer te zien. Het idee is om de display een halve minuut de afbeelding van Radio Caroline te laten zien en een halve minuut het Weer plaatje.

foto: www.pietsweer.nl

Het weerbericht kunnen we verkrijgen bij weerlive.nl. Deze dienst heeft een API waarna je na registratie gratis gebruik van mag maken.

Een API (Application Programming Interface) is een software-interface die het mogelijk maakt dat twee applicaties met elkaar kunnen communiceren.

We gaan de informatie van het weer met een API ophalen bij weerlive.nl. Allereerst dien je je te registreren. Je krijgt dan een API key. Deze sleutel heb je nodig om je voor de authenticatie bij de API. Registreer je hier om de API Key te ontvangen.

We gaan weer inloggen op de Raspberry Pi.

Voor dit experiment hebben we jq nodig.

sudo apt install jq

Met dit commando installeert u jq. jq is een json processor waarmee we een json string kunnen filteren en de gegevens er uit kunnen halen die we nodig hebben.

We maken ook gebruik van het commando Curl. Curl is een commandline tool waarmee je diverse soorten gegevens kunt downloaden. Curl staat voor “Client URL”.

met de API Key kunnen we nu een aanvraag sturen naar de API van weerlive.nl. Vul op de XXXXXXXXXX in onderstaande string je eigen API key in. Op de locatie kun je je eigen woonplaats invullen. Je kunt hier ook GPS coordinaten invullen. Later gaan we hier nog wat mee doen voor GPS ontvangst.

curl -s “https://weerlive.nl/api/json-data-10min.php?key=XXXXXXXXXX&locatie=Huizen”

Curl

We krijgen heel veel informatie terug in een JSON string. d0 is vandaag. d0 staat voor dag nul. d1 is de voorspelling voor morgen. En er is ook nog een d2 voor overmorgen. Ik ben met name geïnteresseerd in d0weer. Dit is het huidige weer situatie van vandaag. En dit wil ik vertalen in een pictogram.

Met onderstaand commando stoppen we de huidige weersituatie in de variable “b”. We gebruiken hier Curl en filteren met jq d0weer uit de opgevraagde string. Vul op de XXXXXXXXXX in onderstaande string je eigen API key in.

b=$(curl -s “https://weerlive.nl/api/json-data-10min.php?key=XXXXXXXXXX&locatie=Huizen” | jq –raw-output .liveweer[].d0weer)

Met echo $b kunnen we laten zien wat er in de variabele b is geschreven.

Curl en jq

Het is bewolkt.

Let op je hebt een limiet van 300x opvragen per dag. Dit is omdat het een gratis versie is. De volgende Variabele kunnen we ontvangen van weerlive.nl.

De mogelijke variabelen zijn:
zonnig
bliksem
regen
buien
hagel
mist
sneeuw
bewolkt
halfbewolkt
zwaarbewolkt
nachtmist
helderenacht
wolkennacht

In het volgende deel gaan we BASH scripts maken en deze sturen we weer aan met een Cronjob om de fotootjes op de display te laten zien.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *