La llamada a Google Weather es una simple llamada a una URL pasando el parámetro de ciudad, por ejemplo http://www.google.com/ig/api?weather=Madrid devolviéndonos un XML (podemos probar a poner esta dirección en un navegador web para hacernos una idea).
El siguiente paso sería procesar el XML devuelto y mostrar los datos que nos interesen. Por ejemplo vamos a mostrar un código en PHP para el API de Google Weather usando la librería SimpleXML:
<?php
// Proceso
$ciudad = "Barcelona";
$xml = simplexml_load_file("http://www.google.com/ig/api?weather=".$ciudad);
if($xml===false) { // Fallo al contactar con Google
return null;
}
$current = $xml->xpath("/xml_api_reply/weather/current_conditions");
if(count($current)==0) { // Ciudad errónea
return null;
}
$temperatura_centigrados = $current[0]->temp_c["data"];
$humedad = $current[0]->humidity["data"];
$condiciones = $current[0]->condition["data"];
$icono = $current[0]->icon["data"];
// Vista
echo 'Temperatura: '.$temperatura_centigrados.'°<br/>';
echo $humedad.'<br/>';
echo 'Condiciones: '.$condiciones.'<br/>';
echo '<img src="http://www.google.com/'.$icono.'" alt="'.$condiciones.'" title="'.$condiciones.'"/>"';
?>
Por último, para hacer nuestra aplicación resistente a fallos, recomendamos ejecutar este script desde una llamada AJAX, ya que si Google fallara o tardara en responder, nuestra página tardaría o fallaría al servirse.
Comentarios