kostenlos Wetterdaten aus dem Internet

User stellen ihre Haussteuerung vor

Moderator: Co-Administratoren

Antworten
cimi25
Beiträge: 9
Registriert: 26.04.2017, 23:07

kostenlos Wetterdaten aus dem Internet

Beitrag von cimi25 » 10.07.2018, 11:38

Hallo Leute,
das Programm ist zwar noch nicht vollends ausgereift aber zumindest ein Anfang ist gemacht.
- Zuerst hole ich mir die Wetterdaten von OWM, die es in 2 Ausführungen gibt. Einmal die aktuellen und einmal die Voraussicht für 3 Tage. Dafür braucht man nur einen Account bei openweathermap.org und eine kostenlose API abonieren.
Unter: http://api.openweathermap.org/data/2.5//weather?q= Stadtname ,de&appid= APInummer &lang=de"; bekommt man die aktuellen Wetterdaten.
Unter http://api.openweathermap.org/data/2.5/forecast?id= Stadtid &appid= APInummer &lang=de für die 5 Tages Auskunft
Die StadtID findet man einfach ein in der Browseradresszeile. Auf openweather.org seine Stadt suchen und von dort die StadtID kopieren. https://openweathermap.org/city/StadtID

Dann sind alle Vorbereitungen getroffen und es kann losgehen :)

Aktuelles Wetterabrufen

Dafür habe ich mich aus dem Skript aus dem Forum bedient und leicht angepasst. Hier muss im String" weatherURL" den APIID und den Stadtname(zb. Berlin) eingetragen werden.

Code: Alles auswählen

boolean CUxD=true;

    string txt; 
    var stdout; 
    real wert;
    real a_wert;
    integer wert_pos;
    string stderr;
    string pos2;
    string weatherUrl="http://api.openweathermap.org/data/2.5//weather?q=Stadtname,de&appid=APIID&lang=de";

    if(CUxD){
    dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - '" # weatherUrl # "'");
    dom.GetObject("CUxD.CUX2801001:1.CMD_QUERY_RET").State(1);
    stdout = dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();
}else{
    system.Exec("wget -q -O - '" # weatherUrl # "'", &stdout, &stderr);}

    ! Aussentemperatur
           string pos1="{\"temp\":"; 
           integer wert_pos = stdout.Find(pos1) +  pos1.Length();
           wert = stdout.Substr(wert_pos,10).StrValueByIndex(pos2,0);
           real a_wert = wert.ToInteger() - 273;
            dom.GetObject("AKT_OWM_AussenTemperatur").Variable(a_wert); 
            !WriteLine ("aktuelle Aussentemperatur: " # a_wert # "°C"); 

        


    ! Windgeschwingigkeit
           string pos1="\"wind\":{\"speed\":";
           string pos2=",";
           integer wert_pos = stdout.Find(pos1) +  pos1.Length();
           wert = stdout.Substr(wert_pos,20).StrValueByIndex(pos2,0);
           a_wert = wert.ToFloat() / 3.6;    ! Umrechnung in km pro Stunde
             if (a_wert <     0.00) {txt = "Fehler";                      } else {
             if (a_wert <     1.85) {txt = "Windstille";                  } else { 
             if (a_wert <     9.00) {txt = "geringer Wind";               } else {
             if (a_wert <    19.00) {txt = "leichter Wind";               } else {
             if (a_wert <    28.00) {txt = "schwacher Wind";              } else {
             if (a_wert <    37.00) {txt = "mäßiger Wind";                } else {
             if (a_wert <    46.00) {txt = "frischer Wind";               } else {
             if (a_wert <    56.00) {txt = "starker Wind";                } else {
             if (a_wert <    65.00) {txt = "starker bis stürmischer Wind";} else {
             if (a_wert <    74.00) {txt = "stürmischer Wind";            } else {
             if (a_wert <    83.00) {txt = "Sturm";                       } else {
             if (a_wert <   102.00) {txt = "schwerer Sturm";              } else {
             if (a_wert <   117.00) {txt = "orkanartiger Sturm";          } else {
             if (a_wert >=  117.00) {txt = "Orkan";                      }}}}}}}}}}}}}}
           dom.GetObject("AKT_OWM_Wind").State(txt);
           dom.GetObject("AKT_OWM_Wind_Speed").Variable(a_wert.ToString(1));
           !WriteLine("Windgeschwindigkeit: " + txt + " mit " + a_wert.ToString(1) +" km/h");
    
           
           
     ! Beschreibung
           string pos1="description\":\"";
           string pos2="\"";
           integer wert_pos = stdout.Find(pos1) +  pos1.Length();
           string a_wert;
           a_wert = stdout.Substr(wert_pos,30).StrValueByIndex(pos2,0);
           a_wert = a_wert.ToUTF8();
           dom.GetObject("AKT_OWM_Beschreibung").Variable(a_wert); 
           WriteLine ("Beschreibung: " # a_wert);   
           
           
     ! Wetter
           string pos1="main\":\"";
           string pos2="\"";
           integer wert_pos = stdout.Find(pos1) +  pos1.Length();
           string a_wert;
           a_wert = stdout.Substr(wert_pos,30).StrValueByIndex(pos2,0);
           dom.GetObject("AKT_OWM_Weather").Variable(a_wert); 
           WriteLine ("Weather: " # a_wert);   
           
                     

    ! Niederschlag über 3h
           real a_wert;
           string pos1="rain\":{\"3h\":";
           string pos2="}";
           integer wert_pos = stdout.Find(pos1) +  pos1.Length();
           a_wert = stdout.Substr(wert_pos,20).StrValueByIndex(pos2,0);
           dom.GetObject("AKT_OWM_Regen3h").Variable(a_wert.ToInteger());
           !WriteLine ("Regen in 3h: " # a_wert # " mm");
    }
    

Im System muss jetzt eine ganze Reihe Variablen eingetragen werden: AKT_OWM_Regen3h, AKT_OWM_Weather, AKT_OWM_Beschreibung, AKT_OWM_Wind, AKT_OWM_Wind_Speed, AKT_OWM_AussenTemperatur.

Die Daten kann man für eine ganze Reihe Programme auswerten. Wie ob man heute draußen die Wäsche aufhängen soll, bin mal gespannt auf eure Anwendnen


Das Tageswetter

Hier Werte ich aus dem Wust von Daten das Tageswetter aus. Dies geschieht im 3 Stundentackt
Hier muss im String" weatherURL" den APIID und den StadtID(zb. 2953321 für Frankfurt) eingetragen werden.

Code: Alles auswählen

boolean CUxD=true;

    string txt; 
    var stdout; 
    real wert;
    real a_wert;
    integer wert_pos;
    string stderr;
    string pos2=",";    ! oder   string pos2="}";
    string weatherUrl="http://api.openweathermap.org/data/2.5/forecast?id=&appid=&lang=de";

    if(CUxD){
    dom.GetObject("CUxD.CUX2801001:1.CMD_SETS").State("wget -q -O - '" # weatherUrl # "'");
    dom.GetObject("CUxD.CUX2801001:1.CMD_QUERY_RET").State(1);
    stdout = dom.GetObject("CUxD.CUX2801001:1.CMD_RETS").State();
}else{
    system.Exec("wget -q -O - '" # weatherUrl # "'", &stdout, &stderr);}

 
 
   !das heutige Datum herausfinden
   
   string pos_date1="dt_txt\":\"";
   string pos3= " ";
   integer wert_pos_date1 = stdout.Find(pos_date1) +  pos_date1.Length();
   string date1 = stdout.Substr(wert_pos_date1,20).StrValueByIndex(pos3,0);
   string date2= date1;
   
 
   
  while (date1==date2){
   
     ! Aussentemperatur
           string pos1="{\"temp\":"; 
           integer wert_pos = stdout.Find(pos1) +  pos1.Length();
           wert = stdout.Substr(wert_pos,10).StrValueByIndex(pos2,0);
           real atemp = wert.ToInteger() - 273;
           !WriteLine ("aktuelle Aussentemperatur: " # a_wert # "°C"); 

              
     ! Beschreibung
           string pos1="description\":\"";
           string pos2="\"";
           integer wert_pos = stdout.Find(pos1) +  pos1.Length();
           string beschr = stdout.Substr(wert_pos,30).StrValueByIndex(pos2,0);
           beschr = beschr.ToUTF8(); 
           
     ! Wetter
           string pos1="main\":\"";
           string pos2="\"";
           integer wert_pos = stdout.Find(pos1) +  pos1.Length();
           string bwetter = stdout.Substr(wert_pos,30).StrValueByIndex(pos2,0); 
           
       !Niederschlag über 3h
           integer niederschlag3h;
           string pos1="rain\":{\"3h\":";
           string pos2="}";
           integer wert_pos = stdout.Find(pos1) +  pos1.Length();
           niederschlag3h = stdout.Substr(wert_pos,20).StrValueByIndex(pos2,0);
           
      ! Windgeschwingigkeit
      
           string pos1="\"wind\":{\"speed\":";
           string pos2=",";
           integer wert_pos = stdout.Find(pos1) +  pos1.Length();
           integer speed = stdout.Substr(wert_pos,20).StrValueByIndex(pos2,0);
             if (speed <     0.00) {txt = "Fehler";                      } else {
             if (speed <     1.85) {txt = "Windstille";                  } else { 
             if (speed <     9.00) {txt = "geringer Wind";               } else {
             if (speed <    19.00) {txt = "leichter Wind";               } else {
             if (speed <    28.00) {txt = "schwacher Wind";              } else {
             if (speed <    37.00) {txt = "mäßiger Wind";                } else {
             if (speed <    46.00) {txt = "frischer Wind";               } else {
             if (speed <    56.00) {txt = "starker Wind";                } else {
             if (speed <    65.00) {txt = "starker bis stürmischer Wind";} else {
             if (speed <    74.00) {txt = "stürmischer Wind";            } else {
             if (speed <    83.00) {txt = "Sturm";                       } else {
             if (speed <   102.00) {txt = "schwerer Sturm";              } else {
             if (speed <   117.00) {txt = "orkanartiger Sturm";          } else {
             if (speed >=  117.00) {txt = "Orkan";                      }}}}}}}}}}}}}}
           
   
   !Die Uhrzeit herausfinden und den String kuerzen 
   string pos_time="dt_txt\":\"";
   string pos3 = "country\": \"DE\""; 
   pos2= "\"";
   pos3= " ";
   
   integer wert_pos_time = stdout.Find(pos_time) +  pos_time.Length()+11;
   integer wert_pos_date2 = stdout.Find(pos_time) +  pos_time.Length();
   string time = stdout.Substr(wert_pos_time,20).StrValueByIndex(pos2,0);
   string date2 = stdout.Substr(wert_pos_date2,20).StrValueByIndex(pos3,0);
   integer pos4 =wert_pos_date2+21;
   stdout = stdout.Substr(pos4,16000);
   
     
   !WriteLine("UZ: "#time);
   !WriteLine("Temperatur: " #atemp);
   !WriteLine("Wettertyp: " #bwetter);
   !WriteLine("Windgesch: "#speed);
   !WriteLine("" #beschr);
   !WriteLine("" #bwetter); 
   
   !WriteLine(niederschlag3h);
   
if (time=="00:00:00"){
   dom.GetObject("OWM_AussenTemperatur_00").Variable(atemp);
   dom.GetObject("OWM_Beschreibung_00").Variable(beschr);
   dom.GetObject("OWM_Weather_00").Variable(bwetter);
   dom.GetObject("OWM_Regen3h_00").Variable(niederschlag3h);
   dom.GetObject("OWM_Wind_00").State(txt);
   dom.GetObject("OWM_Wind_Speed_00").Variable(speed);
}
  
      if (time=="03:00:00"){
   dom.GetObject("OWM_AussenTemperatur_03").Variable(atemp);
   dom.GetObject("OWM_Beschreibung_03").Variable(beschr);
   dom.GetObject("OWM_Weather_03").Variable(bwetter);
   dom.GetObject("OWM_Regen3h_03").Variable(niederschlag3h);
   dom.GetObject("OWM_Wind_03").State(txt);
   dom.GetObject("OWM_Wind_Speed_03").Variable(speed);
}

     if (time=="06:00:00"){
   dom.GetObject("OWM_AussenTemperatur_06").Variable(atemp);
   !dom.GetObject("OWM_Beschreibung_06").Variable(beschr);
   dom.GetObject("OWM_Weather_06").Variable(bwetter);
   dom.GetObject("OWM_Regen3h_06").Variable(niederschlag3h);
   dom.GetObject("OWM_Wind_06").State(txt);
   dom.GetObject("OWM_Wind_Speed_06").Variable(speed);
   }

if (time=="09:00:00"){
   dom.GetObject("OWM_AussenTemperatur_09").Variable(atemp);
   dom.GetObject("OWM_Beschreibung_09").Variable(beschr);
   dom.GetObject("OWM_Weather_09").Variable(bwetter);
   dom.GetObject("OWM_Regen3h_09").Variable(niederschlag3h);
   dom.GetObject("OWM_Wind_09").State(txt);
   dom.GetObject("OWM_Wind_Speed_09").Variable(speed);
   }

     if (time=="12:00:00"){
   dom.GetObject("OWM_AussenTemperatur_12").Variable(atemp);
   dom.GetObject("OWM_Beschreibung_12").Variable(beschr);
   dom.GetObject("OWM_Weather_12").Variable(bwetter);
   dom.GetObject("OWM_Regen3h_12").Variable(niederschlag3h);
   dom.GetObject("OWM_Wind_12").State(txt);
   dom.GetObject("OWM_Wind_Speed_12").Variable(speed);
   }

    if (time=="15:00:00"){
   dom.GetObject("OWM_AussenTemperatur_15").Variable(atemp);
   dom.GetObject("OWM_Beschreibung_15").Variable(beschr);
   dom.GetObject("OWM_Weather_15").Variable(bwetter);
   dom.GetObject("OWM_Regen3h_15").Variable(niederschlag3h);
   dom.GetObject("OWM_Wind_15").State(txt);
   dom.GetObject("OWM_Wind_Speed_15").Variable(speed);
   }

if (time=="18:00:00"){
   dom.GetObject("OWM_AussenTemperatur_18").Variable(atemp);
   dom.GetObject("OWM_Beschreibung_18").Variable(beschr);
   dom.GetObject("OWM_Weather_18").Variable(bwetter);
   dom.GetObject("OWM_Regen3h_18").Variable(niederschlag3h);
   dom.GetObject("OWM_Wind_18").State(txt);
   dom.GetObject("OWM_Wind_Speed_18").Variable(speed);
   }

if (time=="21:00:00"){
   dom.GetObject("OWM_AussenTemperatur_21").Variable(atemp);
   dom.GetObject("OWM_Beschreibung_21").Variable(beschr);
   dom.GetObject("OWM_Weather_21").Variable(bwetter);
   dom.GetObject("OWM_Regen3h_21").Variable(niederschlag3h);
   dom.GetObject("OWM_Wind_21").State(txt);
   dom.GetObject("OWM_Wind_Speed_21").Variable(speed);
   }


 }

Hierbei braucht man eine Unmenge an Variablen und ob alle interessant sind, weiß ich noch nicht. Ein bisschen Feedback wäre ganz nett :). Ich nutze das ganze um zu wissen ob ich abends noch Blumen gießen muss, oder es es heute Regnet stürmt und alle Fenster geschlossen werden müssen etc.
OWM_Beschreibung_00, OWM_AussenTemperatur_00, OWM_Weather_00, OWM_Regen3h_00, OWM_Wind_00,
OWM_Beschreibung_03, OWM_AussenTemperatur_03, OWM_Weather_03, OWM_Regen3h_03, OWM_Wind_03,
OWM_Beschreibung_06, OWM_AussenTemperatur_06, OWM_Weather_06, OWM_Regen3h_06, OWM_Wind_06,
OWM_Beschreibung_09, OWM_AussenTemperatur_09, OWM_Weather_09, OWM_Regen3h_09, OWM_Wind_09,
OWM_Beschreibung_12, OWM_AussenTemperatur_12, OWM_Weather_12, OWM_Regen3h_12, OWM_Wind_12,
OWM_Beschreibung_15, OWM_AussenTemperatur_15, OWM_Weather_15, OWM_Regen3h_15, OWM_Wind_15,
OWM_Beschreibung_18, OWM_AussenTemperatur_18, OWM_Weather_18, OWM_Regen3h_18, OWM_Wind_18,
OWM_Beschreibung_21, OWM_AussenTemperatur_21, OWM_Weather_21, OWM_Regen3h_21, OWM_Wind_21,
Regenmenge, Giessen.

Tageswetter per Telegram
Wenn ein Telegram-bot eingerichtet wurde ((Hier für weitere Infos)), kann man sich sehr einfach per Telegramm morgens das Tageswetter schicken lassen

Code: Alles auswählen

  integer Rmax;
  integer max;
  integer regenmenge;
  string regen="Es besteht eine hohe Regenwahrscheinlichkeit um:  ";
  string klar;
  string sturm="Es soll heute stürmen um: ";
 string niederschlag;
 boolean giessen;
  
   integer T00=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_AussenTemperatur_00").Value();
   integer T03=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_AussenTemperatur_03").Value();
   integer T06=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_AussenTemperatur_06").Value();
   integer T09=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_AussenTemperatur_09").Value();
   integer T12=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_AussenTemperatur_12").Value();
   integer T15=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_AussenTemperatur_15").Value();
   integer T18=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_AussenTemperatur_18").Value();
   integer T21=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_AussenTemperatur_21").Value();
  
  if (T00>T03){max=T00;}else{max=T03;}
  if (max>T06){max=max;}else{max=T06;}
  if (max>T09){max=max;}else{max=T09;}
  if (max>T12){max=max;}else{max=T12;}
  if (max>T15){max=max;}else{max=T15;}
  if (max>T18){max=max;}else{max=T18;}
  if (max>T21){max=max;}else{max=T21;}
  
  
  
   string W00=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Weather_00").Value();
   string W03=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Weather_03").Value();
   string W06=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Weather_06").Value();
   string W09=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Weather_09").Value();
   string W12=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Weather_12").Value();
   string W15=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Weather_15").Value();
   string W18=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Weather_18").Value();
   string W21=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Weather_21").Value();
   
   
   
   if (W03=="Rain"){regen=regen+"03 Uhr, ";}
   if (W06=="Rain"){regen=regen+"06 Uhr, ";}
   if (W09=="Rain"){regen=regen+"09 Uhr, ";}
   if (W12=="Rain"){regen=regen+"12 Uhr, ";}
   if (W15=="Rain"){regen=regen+"15 Uhr, ";}
   if (W18=="Rain"){regen=regen+"18 Uhr, ";}
   if (W21=="Rain"){regen=regen+"21 Uhr, ";}
   if (W00=="Rain"){regen=regen+"24 Uhr, ";}
   if (regen =="Es besteht eine hohe Regenwahrscheinlichkeit um:  ") {regen ="";}
  
   if (W00=="clear" & W03=="clear" & W06=="clear" & W09=="clear" & W12=="clear" & W15=="clear" & W18=="clear" & W21=="clear"){klar="Es bleibt den ganzen Tag klar";} else {klar="Es wird heute bewölkt";}
   
  
  
  integer S00=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Wind_Speed_00").Value();
   integer S03=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Wind_Speed_03").Value();
   integer S06=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Wind_Speed_06").Value();
   integer S09=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Wind_Speed_09").Value();
   integer S12=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Wind_Speed_12").Value();
   integer S15=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Wind_Speed_15").Value();
   integer S18=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Wind_Speed_18").Value();
   integer S21=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Wind_Speed_21").Value();
  
    
    if (S03 > 39){sturm=sturm+"03 Uhr, ";}
    if (S06 > 39){sturm=sturm+"06 Uhr, ";}
    if (S09 > 39){sturm=sturm+"09 Uhr, ";}
    if (S12 > 39){sturm=sturm+"12 Uhr, ";}
    if (S15 > 39){sturm=sturm+"15 Uhr, ";}
    if (S18 > 39){sturm=sturm+"18 Uhr, ";}
    if (S21 > 39){sturm=sturm+"21 Uhr, ";}
    if (S00 > 39){sturm=sturm+"24 Uhr, ";}
    
    if (sturm=="Es soll heute stürmen um: "){sturm="Es weht kaum wind";}
   max = max.ToString(1);

   integer R00=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Regen3h_00").Value();
   integer R03=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Regen3h_03").Value();
   integer R06=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Regen3h_06").Value();
   integer R09=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Regen3h_09").Value();
   integer R12=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Regen3h_12").Value();
   integer R15=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Regen3h_15").Value();
   integer R18=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Regen3h_18").Value();
   integer R21=dom.GetObject(ID_SYSTEM_VARIABLES).Get("OWM_Regen3h_21").Value();

if (R00>R03){Rmax=R00;}else{Rmax=03;}
  if (Rmax>R06){Rmax=Rmax;}else{Rmax=R06;}
  if (Rmax>R09){Rmax=Rmax;}else{Rmax=R09;}
  if (Rmax>R12){Rmax=Rmax;}else{Rmax=R12;}
  if (Rmax>R15){Rmax=Rmax;}else{Rmax=R15;}
  if (Rmax>R18){Rmax=Rmax;}else{Rmax=R18;}
  if (Rmax>R21){Rmax=Rmax;}else{Rmax=R21;}
  regenmenge= R00+R03+R06+R09+R12+R15+R18+R21; 
  dom.GetObject("regenmenge").Variable(Regenmenge);
  if (regenmenge>20){giessen=false; dom.GetObject("Giessen").Variable(false);}else{giessen=true; dom.GetObject("Giessen").Variable(true);}
  regenmenge = regenmenge.ToString(1);  
  WriteLine(regenmenge);

  if (Rmax>0 ){niederschlag="Es gibt leichten Regen";} 
  if (Rmax>=2.5 ){niederschlag="Es gibt mittleren regen";}
  if (Rmax>=10){niederschlag="Es gibt ein starkes Gewitter";} 


  
string message = klar+ "\n" + "Temperatur bis " +max+" °C," +"\n"+sturm +"\n"+regen+"\n"+niederschlag; 
message= message.ToUTF8();
WriteLine(message);
!string chatid = ""; ! chat_id des Empfängers 
!string botAPI = ""; ! API des eingerichteten Bots
!dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("extra/curl -s -k https://api.telegram.org/botAPI/sendMessage -d text='"#message#"' -d chat_id="#chatid);


mcbert
Beiträge: 56
Registriert: 03.07.2018, 18:51

Re: kostenlos Wetterdaten aus dem Internet

Beitrag von mcbert » 10.07.2018, 23:34

du kannst die Stadt eigentlich immer angeben:

Sprich auch bei der Vorhersage

Code: Alles auswählen

http://api.openweathermap.org/data/2.5/forecast?q=Muenchen,de&appid.....

Alexxx2005
Beiträge: 136
Registriert: 17.12.2014, 18:56

Re: kostenlos Wetterdaten aus dem Internet

Beitrag von Alexxx2005 » 06.08.2018, 22:23

Hallo Cimi,

wollte gerade dein Skript testen allerdings ändert sich
nichts bis auf die Windrichtung, auch die Tagesauswertungen
funktionieren nicht , kannst du das bestätigen ?

Grüße Alex

ist
Beiträge: 1
Registriert: 02.09.2018, 09:23

Re: kostenlos Wetterdaten aus dem Internet

Beitrag von ist » 02.09.2018, 09:28

Hallo Cimi,

ich habe Dein Script übernommen und mir bei OWM ein Konto eingerichtet. Den Link für die API habe ich ausprobiert und ich bekomme die Seite mit den Eintragungen für meine Stadt.

Leider bekomme ich bei der Homematic nur drei "???" in der jeweiligen Variablen. CuxD habe ich installiert. Müsste ich hier noch eine gewisse Vorbereitung treffen?

Ich denke ich habe alles nach der Anleitung erstellt, jedoch bekomme ich nicht das richtige Ergebnis.

Gruß Ingo

Maddin75
Beiträge: 7
Registriert: 16.06.2016, 15:39

Re: kostenlos Wetterdaten aus dem Internet

Beitrag von Maddin75 » 23.09.2018, 13:49

Funktioniert ganz gut aber wieso wir -273 Grad Ceksius angezeigt? hat das noch jemand?

Chemieka
Beiträge: 236
Registriert: 03.01.2017, 17:39

Re: kostenlos Wetterdaten aus dem Internet

Beitrag von Chemieka » 03.10.2018, 18:28

Das hört sich doch nach der selben Quelle wie hier an:
viewtopic.php?f=18&t=35702
Ich brauche noch die Niederschlagsmenge der letzten 24h.
PI3 mit RaspberryMatic; PI3 mit IOBroker; Samsung Tab A mit Mediola Visualisierung; Harmony Hub; Philips Hue; Zwei IP Cams; Zwei Leseköpfe an den Stromzählern zur Darstellung des Stromverbrauches. CUL433 für Intertechno und Somfy RTS

Antworten

Zurück zu „Projektvorstellungen“