Screen Shot 2011-10-03 at 7.35.01 PM

Google Weather API

Lai atveidotu gaisa temperatūru Kambodžas blogā, es gribēju atrast vienkāršu veidu, lai ar php palīdzību varētu izvadīt, šī brīža gaisa temperatūru, gaisa mitrumu un īsu laikapstākļu raksturojumu.

Dažādas laikapstākļu lapas piedāvā savus vidžetus un citus niekus, taču visbiežāk informācija tiek izvadīta angļu valodā, kā arī līdzi nāk krietna deva ar datiem, kuri ir lieki.

Nesen atradu, ka ir nedokumentēts Google Weather API, kas no Google puses netiek īpaši reklamēts, bet kurš ir atbildīgs par iGoogle laikapstākļu attēlošanu.

Primitīvākais koda gabals, ko atradu ir no šīs lapas: freecomputeradvice.net Droši vien var atrast, ko labāku, bet šis pilnībā atbilst manām prasībām, turklāt ir iespēja datus izvadīt normālā latviešu valodā. Mazliet pielaboju kodu, lai tas spētu tikt galā ar latviešu valodas kodējumu, kā arī, lai attēlotu man nepieciešamo informāciju.

Lūk koda piemērs:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 <?php
 function getWeather() {
 $requestAddress = "http://www.google.com/ig/api?weather=cambodia&amp;hl=lv";
 $dataInISO = file_get_contents($requestAddress);
 $dataInUTF = mb_convert_encoding($dataInISO, "UTF-8", "ISO-8859-13");
 
 $xml_str = file_get_contents($requestAddress,0);
 $xml = simplexml_load_string($dataInUTF);
 $count = 1;
 
 foreach($xml->weather as $item) {
        foreach($item->current_conditions as $new) {
               echo $new->condition['data'];
               echo $new->humidity['data'];
               echo $new->temp_c['data'];
               // un tā tālāk
               }
        }
 }
 getWeather();
?>

Rezultātā tiekam pie šādas informācijas:

Lai redzētu, kādi dati vēl ir pieejami var atvērt, piemēram, šo lapu http://www.google.com/ig/api?weather=cambodia&hl=lv un izpētīt xml struktūru, lai pēc tam izveidotu attiecīgu pieprasījumu.

Kā redzams ir iespējams saņemt arī laika prognozi, kā arī ikonu ar laikapstākļu attēlojumu:

Ja nepieciešama informācija par pilsētu, tad jānorāda: weather=pilsēta,valsts. Par to vai prasījums izveidots pareizi var pārliecinoties atverot lapu pārlūkā.

 

, , , ,

  • Ronalds Vilciņš

    Kā reiz šito nesen meklēju. thnx

  • jā, šo izmantoju vairākās mājas lapās. Tur vēl “skaistas” ikonas nāk līdzi :) Tikai tām bildītēm ik pa laikam mainās adrese (citreiz ar/bez “http://www.google.com/”)

  • modris

    starp citu, es jau kādu laiku gribēju pajautāt, kā Tev (tur) sokas ar savu profesionālo nodarbi?
    to ka izbaudi riteņbraukšanu, vietējo kultūru – tas viss ir forši un patiešām ar interesi vēroju vizuālās reportāžas. tomēr bez tā visa tak ir arī darbs.
    Un kā aprakstītu ar ko nodarbojies? Slīpē vecos/taisi jaunus LV projektus jeb skaties plašāk.

    • Pagaidām es koncentrējos uz iesāktajiem LV projektiem. Drīz būs iespēja arī šeit sākt darboties, bet tiešām gribu visu skaisti pabeigt, pirms uzņemties, ko jaunu. Tālāk plāns ir LV līmenī darboties tikai ar tādām lietām, kuras pašam šķiet interesantas un visu uzmanību vērst uz vietējām+neLV lietām.