Liebes Forum,
ich habe das Ziel mithilfe der Wundergound Weather-API, Wetterdaten zu sammeln und in einem zweiten Schritt hieraus eine Visualisierung zu erstellen.
Mithilfe /1/]dieses Tutorials komme ich an die Daten im JSON-Format.
Die Abfrage funktioniert mit:
#!/bin/bash
# Wetterdaten von Wunderground holen und und in Output-Datei schreiben
# Ortsvariable kann unter https://www.wunderground.com abgefragt werden
FILE="/home/pi/Scripts/Wetter/output_sw" # Pfad anpassen
KEY="**************" # Key einfügen!
OPTIONS="lang:DL"
PLACE="zmw:00000.3.11350" # Ortscodes/Variablen anpassen!
wget -q http://api.wunderground.com/api/${KEY}/conditions/${OPTIONS}/q/${PLACE}.json -O $FILE
Alles anzeigen
Die resultierende Datei output_sw sieht dann wie folgt aus:
{
"response": {
"version":"0.1",
"termsofService":"http://www.wunderground.com/weather/api/d/terms.html",
"features": {
"conditions": 1
}
}
, "current_observation": {
"image": {
"url":"http://icons.wxug.com/graphics/wu2/logo_130x80.png",
"title":"Weather Underground",
"link":"http://www.wunderground.com"
},
"display_location": {
"full":"Berchtesgaden, Germany",
"city":"Berchtesgaden",
"state":"",
"state_name":"Germany",
"country":"DL",
"country_iso3166":"DE",
"zip":"00000",
"magic":"3",
"wmo":"11350",
"latitude":"47.63333511",
"longitude":"13.00000000",
"elevation":"605.00000000"
},
"observation_location": {
"full":"Anif, SALZBURG",
"city":"Anif",
"state":"SALZBURG",
"country":"AT",
"country_iso3166":"DE",
"latitude":"47.735630",
"longitude":"13.053646",
"elevation":"1467 ft"
},
"estimated": {
},
"station_id":"ISALZBUR7",
"observation_time":"Last Updated on Juli 7, 14:27 CEST",
"observation_time_rfc822":"Thu, 07 Jul 2016 14:27:06 +0200",
"observation_epoch":"1467894426",
"local_time_rfc822":"Thu, 07 Jul 2016 14:30:06 +0200",
"local_epoch":"1467894606",
"local_tz_short":"CEST",
"local_tz_long":"Europe/Berlin",
"local_tz_offset":"+0200",
"weather":"Teils Wolkig",
"temperature_string":"75.0 F (23.9 C)",
"temp_f":75.0,
"temp_c":23.9,
"relative_humidity":"51%",
Alles anzeigen
Die Abfrage soll über crontab z.B. stündlich laufen und die Datei output_sw immer wieder überschreiben. Nun habe ich mir als leichtesten Weg vorgestellt, die wichtigsten Daten wie Datum, Temperatur, Luftfeuchtigkeit etc. aus der Datei zu extrahieren und in eine ständig wachsende Datei (z.B. wetterdaten.log) zeilenweise zu ergänzen bspw.:
Aus dieser Datei soll dann in einem zweiten Schritt eine grafische Darstellung über einen Webserver auf dem RasPi realisiert werden.
Leider habe ich nicht viel Ahnung von Python und tue mir schon mit dem ersten Schritt schwer.
Kann jemand helfen? Lieben Dank!