+ Antworten
Seite 1 von 15 1 2 3 11 ... LetzteLetzte
Ergebnis 1 bis 10 von 149
  1. #1
    Registriert seit
    Jan 2011
    Ort
    Uetendorf, Bern, CH
    Beiträge
    1,092

    Standard Wetterdaten - Wunderground API

    die Google Api ist down, dafür ist jetzt dies da, und das ist jetzt wohl ein bisschen geiler

    PHP-Code:
    <?php
    $api 
    "xxxx";
    $ort "SIGRISWIL";

    //aktuelles Wetter
      
    $json_string file_get_contents("http://api.wunderground.com/api/$api/geolookup/conditions/lang:DL/q/DL/$ort.json");
      
    $parsed_json json_decode($json_string);
      
    $icon $parsed_json->{'current_observation'}->{'icon'};
      
    $temp_c $parsed_json->{'current_observation'}->{'temp_c'};
      
    $min_temp $parsed_json->{'current_observation'}->{'dewpoint_c'};
      
    $humid $parsed_json->{'current_observation'}->{'relative_humidity'};
      
    $wind_speed $parsed_json->{'current_observation'}->{'wind_kph'};
      
    $wind_dir $parsed_json->{'current_observation'}->{'wind_dir'};
      
    $luftdruck $parsed_json->{'current_observation'}->{'pressure_mb'};
      
    $wetter $parsed_json->{'current_observation'}->{'weather'};
      
    $sichtweite $parsed_json->{'current_observation'}->{'visibility_km'};


           echo 
    "${icon}\n";
              echo 
    "akt. Temp: ${temp_c}°C\n";
          echo 
    "Minimal: ${min_temp}°C\n";
            echo 
    "akt. Luftfeuchte: ${humid}\n";
          echo 
    "Windgeschwindigkeit: ${wind_speed} Km/h\n";
          echo 
    "Windrichtung: ${wind_dir} \n";
          echo 
    "Luftdruck: ${luftdruck} HPa \n";
          echo 
    "Luftdruck: ${wetter}\n";
          echo 
    "Sichtweite: ${sichtweite} Km\n";
          
    // Vorhersage
    $json_fc_string file_get_contents("http://api.wunderground.com/api/$api/forecast/lang:DL/q/Switzerland/$ort.json");
    $parsed_fc_json json_decode($json_fc_string);

      
    $prognose $parsed_fc_json->{'forecast'}->{'simpleforecast'}->{'forecastday'};
    //heute
            
    echo $icon0 = ($prognose[0]->icon) . "\n";;
            echo 
    $high0 = ($prognose[0]->high->celsius) . "\n";;
            echo 
    $low0 = ($prognose[0]->low->celsius) . "\n";;
            echo 
    $conditions0 utf8_decode($prognose[0]->conditions) . "\n";
    //morgen
            
    echo $icon1 = ($prognose[1]->icon) . "\n";;
            echo 
    $high1 = ($prognose[1]->high->celsius) . "\n";;
            echo 
    $low1 = ($prognose[1]->low->celsius) . "\n";;
            echo 
    $conditions1 utf8_decode($prognose[1]->conditions) . "\n";
    //übermorgen
            
    echo $icon2 = ($prognose[2]->icon) . "\n";;
            echo 
    $high2 = ($prognose[2]->high->celsius) . "\n";;
            echo 
    $low2 = ($prognose[2]->low->celsius) . "\n";;
            echo 
    $conditions2 utf8_decode($prognose[2]->conditions) . "\n";

    //Alarm
    $json_al_string file_get_contents("http://api.wunderground.com/api/$api/alerts/q/zmw:00000.1.16172.json");
    $parsed_al_json json_decode($json_al_string);

    //Astronomie
    $json_ast_string file_get_contents("http://api.wunderground.com/api/$api/astronomy/q/Switzerland/$ort.json");
    $parsed_ast_json json_decode($json_ast_string);

      
    $mondbel $parsed_ast_json->{'moon_phase'}->{'percentIlluminated'}; //% Mondbeleuchtung
      
    $mondage $parsed_ast_json->{'moon_phase'}->{'ageOfMoon'}; //% Mondbeleuchtung
      
    $sunriseh $parsed_ast_json->{'moon_phase'}->{'sunrise'}->{'hour'}; // Sonnenaufgang Stunde
      
    $sunrisem $parsed_ast_json->{'moon_phase'}->{'sunrise'}->{'minute'}; //% Sonnenaufgang Minute
      
    $sunseth $parsed_ast_json->{'moon_phase'}->{'sunset'}->{'hour'}; // Sonnenaufgang Stunde
      
    $sunsetm $parsed_ast_json->{'moon_phase'}->{'sunset'}->{'minute'}; //% Sonnenaufgang Minute

      
           
    echo "Mondbeleuchtung: ${mondbel}%\n";
             echo 
    "Alter des Mondes: ${mondage} Tage\n";
             echo 
    "Sonnenaufgang: ${sunriseh}:${sunrisem}\n";
             echo 
    "Sonnenuntergang: ${sunseth}:${sunsetm}\n";


    ?>
    Laut Berichten bezog Google die Daten teilweise auch hier.

    EDIT:

    Tages und 3- Tagesprognosen. Die Icon-Bezeichnungen müssen noch angepasst werden.

    Astrologie (im ganz kleinen Masse und Wetteralarm (hab bloss noch nicht rausgefunden, um welche Alarme es sich handelt), sind nun auch drin
    Geändert von SmartHomeSchweiz (29.08.12 um 22:29 Uhr)
    mfG Jürg
    IPS V.5.0,Homematic(CCU2,Lanadapter),1-Wire,Pokeys,FS20,Fritzbox 7390,Fingerprint Bio-Gate,RaspberryPi's, Sonos

  2. #2
    Registriert seit
    Feb 2009
    Ort
    Hamburg
    Beiträge
    2,094

    Sehr nice.....

    Hab mich da gleich mal angemeldet!!

    Hast Du mal einen Tip wie ich meinen City-Code herausfinden kann?!

    Gruß,
    Peter
    -MacMini(2011) =>Parallels 11=>Win7, FB7390, EIB-KNX, DMX-ArtNet, 2x EM24 DIN, SONOS ZP100/120/Play:1/Play:5/Sub, 1Wire=>Wiregate, xbee=>ROOMBA, Dreambox, DENON 2313, 8x Philips HUE -

  3. #3
    Registriert seit
    Apr 2010
    Ort
    Oberbayern
    Beiträge
    4,836

    Schau Dir in der API-Dokumentation mal die Funktion Geolookup an. Da kannst Deinen Citycode mit Hilfe von Längen- und Breitengrad ermitteln. Und diese beiden Daten (sofern Du Sie nicht schon hast) kannst Du Dir auf der Hauptseite beschaffen wenn Du Deinen Ort dort findest.
    Grüsse, Kronos.
    Wenn am Anfang alles schief geht, nenne es Version 1.0
    IPS 5.3 auf Server 2016 / HM mit CCU2 (RaspberryMatic) + LAN-Adapter + LAN- & Wired Gateway, 241 Geräte / XBee Pro (Roomba) / RoboRock S50 / RGB-W 868 / MiLight / EKM 868 / AKM / ein Rudel Squeezeboxen+Pi / EM24DIN+VS102 / AM 220 AC / PlugWise / VU+ / ALL4x00 / LevelJet / IRTRans / Echos diverse / viel zu wenig Zeit


    Einfach mal rein schauen: IPS-Chat

  4. #4
    Registriert seit
    Aug 2009
    Ort
    Meißen
    Beiträge
    293

    Hallo,

    hat schon jemand mit der "wunderground API" gearbeitet?

    Ich bekomme immer die Fehlermeldung "failed to open stream: HTTP request failed! HTTP/1.0 401 Unauthorized" wenn ich mit file_get_contents arbeite.

    Gebe ich im IE folgende Zeile ein funktioniert es und ich erhalte eine JSON-Datei!

    HTML-Code:
    http://api.wunderground.com/api/xxxxxxxxxxxxAPI-Key/conditions/lang:DL/q/DL/Meissen.json
    Woran kann das liegen?

    Gruß Tommy

  5. #5
    Registriert seit
    Jan 2011
    Ort
    Uetendorf, Bern, CH
    Beiträge
    1,092

    3 Posts weiteroben hast du alles was du brauchst
    mfG Jürg
    IPS V.5.0,Homematic(CCU2,Lanadapter),1-Wire,Pokeys,FS20,Fritzbox 7390,Fingerprint Bio-Gate,RaspberryPi's, Sonos

  6. #6
    Registriert seit
    Sep 2011
    Beiträge
    182

    Standard bei mir funktioniert es

    hier ist die Ausgabe der API


    Code:
    {
    	"response": {
    		"version": "0.1"
    		,"termsofService": "http://www.wunderground.com/weather/api/d/terms.html"
    		,"features": {
    		"geolookup": 1
    		,
    		"conditions": 1
    		}
    	}
    		,	"location": {
    		"type":"INTLCITY",
    		"country":"SW",
    		"country_iso3166":"CH",
    		"country_name":"Schweiz",
    		"state":"",
    		"city":"Sigriswil",
    		"tz_short":"CEST",
    		"tz_long":"Europe/Zurich",
    		"lat":"46.71666718",
    		"lon":"7.69999981",
    		"zip":"00000",
    		"magic":"19",
    		"wmo":"06734",
    		"l":"/q/zmw:00000.19.06734",
    		"requesturl":"global/stations/06734.html",
    		"wuiurl":"http://www.wunderground.com/global/stations/06734.html",
    		"nearby_weather_stations": {
    		"airport": {
    		"station": [
    		{ "city":"Interlaken", "state":"", "country":"Switzerland", "icao":"----", "lat":"46.66666794", "lon":"7.86666679" },
    		{ "city":"Bern-Belp", "state":"", "country":"SW", "icao":"LSZB", "lat":"46.91999817", "lon":"7.50000000" },
    		{ "city":"Sion", "state":"", "country":"SW", "icao":"LSGS", "lat":"46.22000122", "lon":"7.32999992" },
    		{ "city":"Grenchen", "state":"", "country":"SW", "icao":"LSZG", "lat":"47.18000031", "lon":"7.42000008" }
    		]
    		}
    		,
    		"pws": {
    		"station": [
    		{
    		"neighborhood":"APRSWXNET Thun CH",
    		"city":"Interlaken",
    		"state":"",
    		"country":"SW",
    		"id":"MD1844",
    		"distance_km":5,
    		"distance_mi":3
    		},
    		{
    		"neighborhood":"Thun",
    		"city":"Thun - Strandbad",
    		"state":"BERN",
    		"country":"Switzerland",
    		"id":"IBERNTHU5",
    		"distance_km":5,
    		"distance_mi":3
    		},
    		{
    		"neighborhood":"Thun",
    		"city":"Thun",
    		"state":"Bern",
    		"country":"Switzerland",
    		"id":"IBERNTHU4",
    		"distance_km":7,
    		"distance_mi":4
    		},
    		{
    		"neighborhood":"Uetendorf",
    		"city":"Uetendorf",
    		"state":"BERN",
    		"country":"SWITZERLAND",
    		"id":"IBERNUET2",
    		"distance_km":11,
    		"distance_mi":6
    		},
    		{
    		"neighborhood":"",
    		"city":"Frutigen",
    		"state":"Bern",
    		"country":"SWITZERLAND",
    		"id":"IBERNFRU2",
    		"distance_km":15,
    		"distance_mi":9
    		},
    		{
    		"neighborhood":"",
    		"city":"Zimmerwald",
    		"state":"BERN",
    		"country":"SWITZERLAND",
    		"id":"IBERNZIM2",
    		"distance_km":25,
    		"distance_mi":15
    		},
    		{
    		"neighborhood":"Grindelwald",
    		"city":"Grindelwald",
    		"state":"Kt. Bern",
    		"country":"SWITZERLAND",
    		"id":"IBERNGRI2",
    		"distance_km":28,
    		"distance_mi":16
    		},
    		{
    		"neighborhood":"",
    		"city":"Niederscherli",
    		"state":"BERN",
    		"country":"SWITZERLAND",
    		"id":"IBERNNIE3",
    		"distance_km":31,
    		"distance_mi":18
    		},
    		{
    		"neighborhood":"Bern",
    		"city":"Hasle-Ruegsau i.E.",
    		"state":"BERN",
    		"country":"Switzerland",
    		"id":"IBERNOBE2",
    		"distance_km":34,
    		"distance_mi":20
    		},
    		{
    		"neighborhood":"Neuenegg, Switzerland",
    		"city":"Neuenegg",
    		"state":"Bern",
    		"country":"SWITZERLAND",
    		"id":"IBERNNEU2",
    		"distance_km":36,
    		"distance_mi":21
    		},
    		{
    		"neighborhood":"",
    		"city":"Meiringen",
    		"state":"BERNE",
    		"country":"SWITZERLAND",
    		"id":"IBERNEME2",
    		"distance_km":37,
    		"distance_mi":22
    		}
    		]
    		}
    		}
    	}
    		,	"current_observation": {
    		"image": {
    		"url":"http://icons-ak.wxug.com/graphics/wu2/logo_130x80.png",
    		"title":"Weather Underground",
    		"link":"http://www.wunderground.com"
    		},
    		"display_location": {
    		"full":"Sigriswil, Schweiz",
    		"city":"Sigriswil",
    		"state":"",
    		"state_name":"Schweiz",
    		"country":"SW",
    		"country_iso3166":"CH",
    		"zip":"00000",
    		"latitude":"46.71666718",
    		"longitude":"7.69999981",
    		"elevation":"716.00000000"
    		},
    		"observation_location": {
    		"full":"APRSWXNET Thun CH, Interlaken, ",
    		"city":"APRSWXNET Thun CH, Interlaken",
    		"state":"",
    		"country":"SW",
    		"country_iso3166":"CH",
    		"latitude":"46.715961",
    		"longitude":"7.627840",
    		"elevation":"1955 ft"
    		},
    		"estimated": {
    		},
    		"station_id":"MD1844",
    		"observation_time":"Last Updated on August 29, 11:39 CEST",
    		"observation_time_rfc822":"Wed, 29 Aug 2012 11:39:00 +0200",
    		"observation_epoch":"1346233140",
    		"local_time_rfc822":"Wed, 29 Aug 2012 12:15:58 +0200",
    		"local_epoch":"1346235358",
    		"local_tz_short":"CEST",
    		"local_tz_long":"Europe/Zurich",
    		"local_tz_offset":"+0200",
    		"weather":"Teils Wolkig",
    		"temperature_string":"68 F (20.0 C)",
    		"temp_f":68,
    		"temp_c":20.0,
    		"relative_humidity":"65%",
    		"wind_string":"Calm",
    		"wind_dir":"Nord-Nordost",
    		"wind_degrees":12,
    		"wind_mph":0,
    		"wind_gust_mph":0,
    		"wind_kph":0.0,
    		"wind_gust_kph":0,
    		"pressure_mb":"1021",
    		"pressure_in":"30.15",
    		"pressure_trend":"0",
    		"dewpoint_string":"56 F (13 C)",
    		"dewpoint_f":56,
    		"dewpoint_c":13,
    		"heat_index_string":"NA",
    		"heat_index_f":"NA",
    		"heat_index_c":"NA",
    		"windchill_string":"NA",
    		"windchill_f":"NA",
    		"windchill_c":"NA",
    		"feelslike_string":"68 F (20.0 C)",
    		"feelslike_f":"68",
    		"feelslike_c":"20.0",
    		"visibility_mi":"6.2",
    		"visibility_km":"10.0",
    		"solarradiation":"",
    		"UV":"5",
    		"precip_1hr_string":"0.00 in ( 0 mm)",
    		"precip_1hr_in":"0.00",
    		"precip_1hr_metric":" 0",
    		"precip_today_string":"-999.00 in (-25375 mm)",
    		"precip_today_in":"-999.00",
    		"precip_today_metric":"-25375",
    		"icon":"partlycloudy",
    		"icon_url":"http://icons-ak.wxug.com/i/c/k/partlycloudy.gif",
    		"forecast_url":"http://www.wunderground.com/global/stations/06734.html",
    		"history_url":"http://www.wunderground.com/weatherstation/WXDailyHistory.asp?ID=MD1844",
    		"ob_url":"http://www.wunderground.com/cgi-bin/findweather/getForecast?query=46.715961,7.627840"
    	}
    }
    akt. Temp: 20°C
    Minimal: 13°C
    akt. Luftfeuchte: 65%
    Windgeschwindigkeit: 0 Km/h
    Windrichtung: Nord-Nordost 
    Luftdruck: 1021 HPa 
    Luftdruck: Teils Wolkig
    Sichtweite: 10.0 Km
    IPS 5 Beta\\ Ipad 2 \\ 2 Iphone SE mit siri \\ IPS-868 Energie Messung , AKM und LED RGB Leiste\\ 60 Homematic Geräte \\17 Plugwise Steckdosen \\ 2x Coolstream Neo \\ 3x Squeezebox Boom \\ Webcam\\ Roomba 770 mit Wlan // Sonos // Can-Bus Energiespar Therme \\conradt.me

  7. #7
    Registriert seit
    Jan 2007
    Ort
    Nidda(Hessen)
    Beiträge
    7,330

    Ich hab das Thema abgetrennt, da es mit der Wetterseite nichts zutun hat. Ich werde es auch definitiv nicht verwenden.
    Gruß Rainer


    Unmögliches wird sofort erledigt, Wunder dauern etwas länger.


  8. #8
    Registriert seit
    Sep 2011
    Beiträge
    182

    Zitat Zitat von PeterChrisben Beitrag anzeigen
    Sehr nice.....

    Hab mich da gleich mal angemeldet!!

    Hast Du mal einen Tip wie ich meinen City-Code herausfinden kann?!

    Gruß,
    Peter
    bei mir klappt es mit dem Stadtnamen


    $json_string = file_get_contents("http://api.wunderground.com/api/xxxxdeinxxAPIxxCodexxx/geolookup/conditions/langL/q/DL/NRW/Stadtlohn.json");
    IPS 5 Beta\\ Ipad 2 \\ 2 Iphone SE mit siri \\ IPS-868 Energie Messung , AKM und LED RGB Leiste\\ 60 Homematic Geräte \\17 Plugwise Steckdosen \\ 2x Coolstream Neo \\ 3x Squeezebox Boom \\ Webcam\\ Roomba 770 mit Wlan // Sonos // Can-Bus Energiespar Therme \\conradt.me

  9. #9
    Registriert seit
    Feb 2009
    Ort
    Hamburg
    Beiträge
    2,094

    Jupp... hab es hin bekommen. Für alle die lieber ( so wie ich ) mit xml arbeiten als mit json einfach am Ende .xml statt .json eintippen! Geht auch!
    Super Sache! 500 Abfragen am Tag und nicht mehr als 10 / Minute sind frei! Just for Info falls noch jemand überlegt!
    Grüße und Danke,
    Peter




    Sent from my iPhone using Tapatalk
    -MacMini(2011) =>Parallels 11=>Win7, FB7390, EIB-KNX, DMX-ArtNet, 2x EM24 DIN, SONOS ZP100/120/Play:1/Play:5/Sub, 1Wire=>Wiregate, xbee=>ROOMBA, Dreambox, DENON 2313, 8x Philips HUE -

  10. #10
    Registriert seit
    Apr 2011
    Ort
    Süßen
    Beiträge
    124

    Kannst Du einem Laien (also mir) einen Tip geben, wie er die Icon-Bezeichnungen anpassen kann?
    Stehe gerade auf dem Schlauch
    vielen Dank

    Ansonsten: Geil
    ___________

    IPS 5.0/IPS 4.3, Homematic, FHZ1300, 1Wire, Plugwise, Foscam, Sonos & viel Geduld

Ähnliche Themen

  1. Eigene Wetterseite mit Wunderground API
    Von kronos im Forum WebFront
    Antworten: 3
    Letzter Beitrag: 26.05.16, 20:23
  2. XML-Api installieren?
    Von Hooker78 im Forum HomeMatic
    Antworten: 3
    Letzter Beitrag: 04.12.10, 17:28
  3. XBee API
    Von steiner im Forum IPS-868 / ProJET, XBee, ZigBee, XPort
    Antworten: 9
    Letzter Beitrag: 01.11.07, 10:24
  4. API Beschreibung
    Von kermitted im Forum Allgemeine Diskussion
    Antworten: 1
    Letzter Beitrag: 01.11.05, 13:43