Realizzare un servizio previsioni meteo con Google Weather

Giorgio Borelli

Per realizzare un servizio previsioni meteo sul proprio sito web possiamo avvalerci delle Google Weather API, tramite di esso avremo a disposizione un file xml con le informazioni meteo della nostra città per tutta la settimana. Google Weather è un web service messo a disposizione di Google, in grado, una volta interrogato a mezzo http di fornire un file xml formattato in maniera tale da fornire precise informazioni sulle previsioni meteo in tutto il mondo.

L'interrogazione del servizio Weather di Google avviene tramite il classico protocollo http, e prevede diversi parametri, tra i quali è possibile specificare la città o il cap di cui si vuole la previsione meteo, eventualmente seguito dalla nazione, inoltre è possibile specificare anche la lingua in modo che il file xml fornito come risposta contenga i dati già nella lingua desiderata. Interrogare il servizio è molto semplice, andiamo a vedere come scrivere l'url per interrogare le Google Weather API.

L'URL per l'interrogazione è del tipo:

http://www.google.com/ig/api?weather=Mazara del Vallo,italy&oe=utf-8&hl=it

andiamo ad analizzare uno per uno i parametri presenti in query string, ovvero dopo il punto interrogativo "?" avremo:

  • weather: questo parametro richiede di specificare la città per la quale si desidera ricevere le previsioni meteo, eventualmente seguito dalla nazionalità, in questo caso italy.
  • oe: indica invece il tipo di codifica con cui si desidera vengano ritornati i dati presenti nel file xml, così da evitare spiacevoli errori di rappresentazione, in questo caso chiediamo la codifica in utf-8
  • hl: infine col parametro hl, indichiamo la lingua con cui desideriamo ottenere i dati, it per italiano, en per inglese e così via.

Il file xml ritornato sarà di questo tipo:

il file in formato xml ritornato dall'interrogazione del servizio Google Weather

una volta ottenuto il file xml non ci resta che leggerlo e scorrerlo nei sui vari nodi per ottenere le informazioni meteo non solo della data odierna, ma anche per i cinque giorni successivi.

Fermiamoci un attimo ad osservare i nodi del file xml:

forecast_information e current_conditions: il primo nodo è quello che contiene tutte le informazioni inerenti la città, la nazione e regione, la data per la quale è stata richiesta la previsione meteo; mentre il nodo immediatamente dopo "current_conditions" riguarda i dati inerenti il meteo per quella città del giorno odierno.

forecast_conditions: i successivi quattro nodi sono di questo tipo, ed indicano le previsioni meteo per i giorni seguenti della settimana per quella città.

A questo punto non ci resta che leggere e scorrere i vari nodi del file xml di Google Weather, possiamo usare la classe XmlReader del .NET o la funzione per la lettura dei file xml simple_xml_loadfile se stiamo sviluppando in PHP. Dopodichè ogni linguaggio con i propri metodi ed oggetti, accediamo ai singoli nodi xml e preleviamo le informazioni che ci interessano, come vedete i dati ritornati sono molto completi indicano: se sereno o nuvoloso, gradi Celsius, gradi Fahrenheit, tasso di umidità e persino il vento; è curioso notare come google weather fornisca anche una icona in formato gif pre-impostata per ogni tipo di condizione meteo (sereno, nuvoloso e così via), risultano molto carine da visualizzare assieme ai dati.

NOTA: Beh! questo è quanto, non c'è altro d'aggiungere su Google Weather, se non un piccolo suggerimento finale, per un qualsiasi motivo il web service di google weather potrebbe non essere disponibile o non interrogabile (ad es. per mancanza di connessione), quindi suggerisco di prelevare il file xml di weather ad intervalli regolari (tipo una volta al giorno) e salvarlo in una apposita directory della vostra applicazione web, dopodichè caricare direttamente il file xml locale per la rappresentazione dei dati sul meteo. In tal modo assicurate più stabilità, garantendo un servizio meteo sul vostro sito sempre presente, salvo lo sfortunatissimo caso che il weather web service non sia interrogabile per oltre cinque giorni.

Chiunque voglia aggiungere qualcosa, chiedere chiarimenti, su "Come realizzare un servizio previsioni meteo con Google Weather" può farlo tramite i commenti.

Categorie: Google

Tags: , ,

Aggiungi Commento

biuquote
  • Commento
  • Anteprima
Loading