Google Weather API en PHP
9/05/09
Suite à certains problèmes que j’ai eu au niveau de la geolocalisation, j’ai mis en place une classe permettant de récupérer la météo d’une ville en utilisant le webservice non officiel de Google.

Il suffit pour cela de passer en paramètre le nom de la ville et d’exploiter les résultats.
Allez voir dans la rubrique « Développements » pour télécharger cette classe.
Consulter la Google Weather API.
Je suis ouvert à toutes remarques éventuelles pour l’amélioration du script.
Article(s) sur le même sujet :



15 mai 2009 - 12 h 13 min
Ajout d’un urlencode sur le nom de la ville :
$this->url = ‘http://'.$this->domain.'/ig/api?weather='.urlencode($this->city_code).'&hl='.$lang;
15 mai 2009 - 12 h 25 min
Merci beaucoup cameleon.
Un oublie de ma part. Je suis sur que tu habite dans une ville avec un espace ou un caractère spécial ?
15 mai 2009 - 12 h 42 min
Oui avec un accent : Compiègne
19 mai 2009 - 12 h 22 min
Bonjour,
Avant tout bravo & merci pour cette API … très pratique pour moi …
Je l’ai implémenté dans mon site privé … A l’utilisation je constate qu’il peut y avoir des irrégularités dans le service google ==> Retourne rien ==> PAF
(malheureusement je n’ai pas le message courant …)
En conséquence, le traitement de cette interruption de service ne pourrait-il pas être géré au niveau de la class ?
et si non comment puis-je le prendre en compte dans mon code
19 mai 2009 - 14 h 22 min
Effectivement, cela peut être une modification qu’il faudrait plutôt implémenter au niveau de la classe.
Le cas où rien n’est retourné par google peut arrivé simplement si la ville n’est pas trouvé.
Je vais regarder ça, reste au courant je mettrais à jour les sources directement sur la page.
19 mai 2009 - 17 h 44 min
Florent, va voir sur la page de l’API, j’ai ajouté une méthode isFound qui te permet de savoir si ta ville à été trouvée.
20 mai 2009 - 8 h 34 min
Merci beaucoup, je regarde du coup
7 juillet 2009 - 18 h 46 min
Bonjour et grand merci pour cette classe, mais vu que j’ai un coté truffe en php5, je ne sais absolument pas comment mettre en page tout ceci pour que ça fasse « joli », un bout de piste serait le bienvenue … ( si possible of course )
Merci d’avance
Laurent
8 juillet 2009 - 8 h 41 min
En faite, toutes les méthodes te renvoient des tableaux. Tu as juste à parser ces tableaux avec un foreach ou for.
24 juillet 2009 - 15 h 32 min
Thanks for sharing your work.I have a problem with special czech (lang ‘cs’) characters (ě,ž,ř,č). Its strange as you do utf8_encode and my site is in utf-8 charset. When I enter url in browser (http://www.google.cz/ig/api?weather=spindleruv%20mlyn&hl=cs) the characters are displayed properly. With fr lang using script,it works ok for french cities, but you dont have characters as we have (with ˇ). Any idea please?
24 octobre 2009 - 15 h 40 min
Bonjour, un très très grand merci pour cette classe.
J’ai le même problème que web-plus avec les caractères spéciaux (cyrilliques pour moi).
Après avoir pas mal galéré, j’ai trouvé la solution en remplaçant la ligne :
$content = utf8_encode($this->response);
par :
if ($lang == ‘ru’)
{
$content = mb_convert_encoding($this->response, ‘UTF-8′, ‘windows-1251′);
}
else
{
$content = mb_convert_encoding($this->response, ‘UTF-8′, ‘ISO-8859-2′);
}
Pour web-plus, il suffit de remplacer ‘ru’ par ‘cs’ et ‘windows-1251′ par ‘je_ne_sais_pas_quoi_!’.
Par ailleurs, j’avais quelques soucis avec des villes que google ne trouvait pas (par exemple Cap d’Agde).
Une petite astuce: j’ai rajouté après la ville ‘,france’ (Cap d’Agde,france) et ça marche nickel !
25 octobre 2009 - 21 h 17 min
Merci pour l’info sur l’encodage des caractères cyrilliques @jmp528.
Quand au faite de rajouter « France » je le faisais déjà mais je laisse délibérément le choix pour les autres pays
16 février 2011 - 12 h 25 min
Merci beaucoup. Excellent.
Par contre, est-ce que quelqu’un sait si il y a droit d’utilisation particulier (même si c’est une API non officielle, elle est accessible par tout le monde) ?
16 février 2011 - 15 h 15 min
Etant l’auteur de ce script, je peux te répondre
elle est accessible par tous le monde sans problème, aucune crainte.
13 janvier 2012 - 9 h 42 min
Merci pour votre travail, mais j’aimerais savoir s’il est possible d’augmenter le nombre de jour dans les prévisions à 7 ? J’ai tenté de modifier les paramètres, mais il ne m’affiche rien mis à part des « ? »…
Je veux juste savoir si je suis restreint par Google pour ça ou juste si c’est parce que je ne modifie pas les bonnes choses…
13 janvier 2012 - 16 h 13 min
Non en faite tu ne peux pas, c’est une limitation Google (en tout cas je n’ai pas vérifié récemment si cela avait changé).