Mittwoch, 2. September 2009

Google Weather API, Maps,Google Docs und alternative zur Wetter-API.: Teil II

In meinem ersten Blog-Post zum Gebrauch der Google Weather API und dem auslesen der Daten mit Hilfe der ImportXML-Funktion von Google Docs und dem Spreadsheet-Modul, möchte ich einige Ergänzungen beschreiben.
Zur besseren Übersicht, werde ich die Tipps auf zwei Blog-Posts aufteilen.

Ich hatte im damaligen Post nur das auslesen der aktuellen Wetterinformationen zu einem Ort beschrieben.
Einige weitere Möglichkeiten fehlen noch z.B.:

  • die Wettervorschau/-vorhersage für die nächsten Tage
  • wie man die Informationen in Google Maps anzeigen lassen kann
  • und das hinzufügen zusätzlicher Informationen, neben den Wetterdaten in der Google Maps (Stichwort: Mashup)

Für mich ist das schöne mit den Import-Funktionen, dass ich mir die gewünschten Wetterdaten/-informationen so anzeigen lassen kann, wie ICH es gerne möchte.
Statt auf den Seiten der diversen Anbieter von Wetterinformationen jedesmal neue Anfragen zu einem neuen Ort abzufragen oder mich über mehrere Links durchzuklicken, stelle ich mir die Daten lieber selber zusammen.
Ausserdem kann ich mir ein einmal erstelltes Spreadsheet auch im Browser als Favorit/Lesezeichen bzw. Bookmark zum Schnellzugriff abspeichern.

Ein weiterer und ggf. größerer Vorteil ist es, dass ich die ermittelten Wetterdaten nach meinen Wünschen weiterverarbeiten kann!


In der XML-Datei in der die Wetter-API die Daten abspeichert, sind neben den aktuellen Wetterdaten auch die Informationen zur Wettervorschau für die nächsten vier Tage vorhanden.
Diese befinden sich unter dem Knoten "forecast_condition" und "day_of_week".

Beispiel der XML-Datei zum Ort "Köln/Koeln"




Das Beispiel sieht so aus, die Wetteraussichten für die folgenden vier Tage sind im unteren Teil der Tabelle zu sehen.





Den Ort der Abfrage - hier Koeln - befindet sich in der Zelle A2. Trägt man am besten zuerst ein, dann werden die Daten in den nächsten Zellen auch sofort angezeigt.


In die Zelle C9 kopiert man folgende ImportXML-Anweisung:

=ImportXML("http://www.google.de/ig/api?weather="&SUBSTITUTE( TRIM(A2) ; " ";"+");"/xml_api_reply/weather/forecast_conditions[1]/day_of_week/ @data")

Hiermit wird der Folgetag - als Wochentagskürzel - zum aktuellen Tag angezeigt.
Für die darauf folgenden drei Tage braucht man nur die Zahl innerhalb von "forecast_conditions[1]" um eins zu erhöhen (forecast_conditions[2], bis[4]) und in eine neue Zelle kopieren (D9, E9 etc.).

In Zelle C10 kopiert man die Abfrage zur Tiefsttemperatur:

=ImportXML("http://www.google.de/ig/api?weather="&SUBSTITUTE( TRIM(A2) ; " ";"+");"/xml_api_reply/weather/forecast_conditions[1]/low/ @data")

Auch hier kopiert man drei weitere Male in die Zellen D10,E10 etc. und erhöht die Zahl in [1] um eins, gilt auch für die folgenden Abfragen!

In Zelle C11 wird die Höchsttemperatur ermittelt:

=ImportXML("http://www.google.de/ig/api?weather="&SUBSTITUTE( TRIM(A2) ; " ";"+");"/xml_api_reply/weather/forecast_conditions[1]/high/ @data")

In Zelle C12 werden die Wetterbindungen angezeigt:

=ImportXML("http://www.google.de/ig/api?weather="&SUBSTITUTE( TRIM(A2) ; " ";"+");"/xml_api_reply/weather/forecast_conditions[1]/condition/ @data")

In Zelle B9 habe ich noch folgende Formel kopiert:

=concatenate("Wettervorhersage für: ";A2;" API-Stand: ";ImportXML("http://www.google.de/ig/api?weather="&SUBSTITUTE( TRIM(A2) ; " ";"+");"/xml_api_reply/weather/forecast_information/current_date_time/@data"))

Damit wird nochmals der gewünschte Ort und der Stand der letzten Google-Abfrage in der XML-Datei angezeigt.

Aus den Informationen mache ich ein erstes Mini-Mashup.
In der Spalte B (B2-B7) habe ich mit folgendem Code zu jedem Ort die aktuellen Wetterdaten zusammengefasst:

=CONCATENATE("Temp: ";C2;"°C";" | Bedingung:" ;D2;" | ";Left(E2;find("%";E2;1) -2)&"%";" | ";F2)

Die Spalten A2 bis B7 werden dann im Maps-Gadget durch zeigen mit der Mouse oder anklicken, im Gadget angezeigt. Die Spalte B wird als "Tooltip" genutzt.
Update: Den in Google Docs erzeugten Code für das Maps-Gadget kann man doch in ein Blogger-Post einfügen!
Lasse aber jetzt das Gadget im Post.
Besondertheit: Zum einbinden der Map hier im Blog-Post musste ich einen Umweg über http://www.google.com/ig/directory?url=www.google.com/ig/modules/map.xml
machen.
Der erzeugte Original-Code aus Google Docs kann ich nicht in ein Blogger-Post einbinden ;-).
Mit dem "Google Maps Data Connector" klappt es aber.




Als Screenshot:
Google-Weather-API-Maps


Ja ich weiß, viel Stoff ;-).
Mal schauen ob ich es schaffe, morgen das nächste Post zu schreiben.


http://noodlegei.blogspot.com

Ähnliche Beiträge zum Thema/Kategorie:



0 Kommentar(e) zum Beitrag:

Kommentar veröffentlichen

Kommentare bitte fair und im rechtlich erlaubten Rahmen verfassen!
Die Kommentare und ggf. hinterlassene URLs werden von mir überprüft. Kommentare die für blaue Pillchen, Glücksspiele, bestimmte Bilder/Videos, Abzocker-Dienste usw. werben, werden gelöscht.

Kommentare von SEO-Link-Builder sind ebenso unerwünscht!

In den Kommentare können die HTML-Tags für:
kursiv = <i>Testwort</i>
fett = <b>Testwort</b>
Links = <a href="http://www.deineURL.de/">Link Text</a>
genutzt werden. Einfach die o.g. Beispiele kopieren und mit den eigenen Werten ersetzen.

  © Blogger template Columnus by Ourblogtemplates.com 2008

Back to TOP