Wetter, Temperatur, usw. per php abrufen?!

heino-th

Erfahrenes Mitglied
Hallo,

also da ich mich zurzeit mit einer Homepage in Flash+php beschäftige wollte ich gerne eine Anzeige mit dem aktuellen Wetter+Temperatur usw. miteinbinden, nun meine Frage:

Hat jemand sowas schon mal gemacht, da ich in php noch ziemlich neu bin, wären tutorials, Beispiele, Hilfe oder ähnliches sehr Hilfreich.
(Natürlich möchte ich schon selber gerne sowas machen, nicht das es so aussieht als ob ich will das mir jemand sowas macht :) möchte ich schon selber gern! Nur als Einsteig oder zum draus lernen/Ü*bern usw.)

Vielleicht weis auch noch jemand von welchem Dienst (z.B: wetter.de!?) man legal wetterdaten abrufen kann?

Vielen Dank schonmal!

mfg heino
 
ich denk das Hauptproblem ist einfach, überhaupt an Wetterdaten ranzukommen.
Wetter.de oder wetter.com bietet zwar an, ein kleines Bildchen auf der eigenen Homepage anzeigen zu lassen, das die aktuelle Wetterlage eines ausgewählten Ortes (z.B. bei einem Zuhause) zeigt, aber man kann halt nicht das design oder die ausgabeform davon beeinflussen, außerdem ist da Werbung von der seite glaube ich dabei.
 
http://www.donnerwetter.de stellt z.B. soetwas wie nach PLZ suchen zur Verfügung und stellt zumindest die Grad-Zahl in Textform dar. Da könnte man von PHP diese Seite aufrufen lassen und den entsprechenden Teil filtern.
 
hm, ja hab ihn mir schon durchgelesen, aber irgendwie werd ich daraus net ganz schlau, wie ich des ins richtige wetter umwandle :confused:

Des bekommen von einem Dienst dafür könnte n Problem werden! Werd gleich mal ne Mail an wetter.de oder wetter.com schicken und nachfragen ob und wie ich dessen Daten abrufen darf/kann :)
(Falls ich ne Mailadresse von denen rausbekomm!)

Falls jemand noch n paar Tipps oder Infos hat, immer her damit ;)
thx

mfg heino
 
Sodala, hab grad ne Mail an wetter.com geschrieben...
Jetzt heißtes erstmal warten und wenns erlaubt wird,
nach Möglichkeit ein Skript zum abrufen dieser Daten zu schreiben,
viellicht weis ja jemand n tut oder hat selber schonmal was
ähnliches geschrieben aus dem ich was lernen kann. ;) )

mfg heino
 
Ich werde mich in Kürze damit beschäftigen, da ich vor habe das reale Wetter von einem bestimmten Punkt der Welt in ein Browserspiel einzubinden. Auf die Dauer durch einen Zufallsgenerator ermitteltes Wetter dürfte langweilig werden... ...da bezieh ich das doch lieber auf den "echten" Zufall ;)

Wenn ich damit soweit bin, werde ich das hier mal vorstellen...
...allerdings wird das ganze in Java realisiert - die Portierung sollte aber keine Probleme bereiten.
 
Manchma gehts schneller als man denkt... ;) Ich hab das ganze erstmal in PHP umgesetzt, ist denke ich auch in deinem Sinne?!

Habs mir ganz einfach gemacht... Unter http://deutsch.wunderground.com/ werden RSS-Feeds die aktuellen Wetterdaten weltweit als RSS-Feeds bereitsgestellt, die auszulesen ist ja kein Akt.
Du kannst dir z.B. unter http://deutsch.wunderground.com/global/DL.html unten aus der tabelle eine deutsche Stadt aussuchen, die Stadt auswählen und rechts oben steht dann ein Sysmbol "RSS", den Link kopierst du dir und fügst ihn unten in $url ein.

Ich habe in dem Script unten nur die für mich wichtigen Elemente geflitert, das sind
[temp] => Temperatur
[verh] => Wetterverhältnisse
[windr] => Windrichtung
[windg] => Windgeschwindigkeit

PHP:
//Wetter in Hamburg - Fuhlsbüttel
$url = "http://deutsch.wunderground.com/auto/rss_full/global/stations/10147.xml";
$content = implode("", file($url));

preg_match_all("/\<item>(.*?)\<\/item\>/si", $content, $results);
preg_match("/\<description\>(.*?)\<\/description\>/si", $results[1][0], $desc);

$arr = explode(" | ",$desc[1]);

/*
 * echo '<pre>' . print_r($arr, true) . '</pre>';
 * 
 * Array
 * (
 *     [0] => Temperature: 86°F / 30°C
 *     [1] => Humidity: 74%
 *     [2] => Pressure: 29.83in / 1010hPa
 *     [3] => Conditions: Partly Cloudy
 *     [4] => Wind Direction: ESE
 *     [5] => Wind Speed: 5mph / 7km/h
 *     [6] => Updated: 10:00 PM PHT
 * )
 */
 
preg_match("/Temperature: (.*?)F \/ (.*?)C/si", $arr[0], $str);
$wetter['temp'] = $str['2'];

preg_match("/Conditions: (.*)/si", $arr[3], $str);
$wetter['verh'] = $str['1'];

preg_match("/Wind Direction: (.*)/si", $arr[4], $str);
$wetter['windr'] = $str['1'];

preg_match("/Wind Speed: (.*?)mph \/ (.*?)km\/h/si", $arr[5], $str);
$wetter['windg'] = $str['2'];

echo '<pre>' . print_r($wetter, true) . '</pre>';

Hoff das hilft dir weiter ;-)
 
Zuletzt bearbeitet:
wow,
vielen Dank!

genau sowas hab ich gesucht
jetzt muss ich nur noch nach meinem Gebrauch anpassen und dann gehts

thx

mfg heino
 
Zurück