samedi, 09 mars 2019 10:08

Openweathermap Spécial

Écrit par

La problématique :

Aujourd'hui nous allons nous intéresser à un webservice vous renvoyant des données météo. Cette API est simple, mais peut vite devenir complexe dans l'écriture de l'URL lançant le webservice, tant la multiplicité des paramètres peut être complexe. L'utilisateur pouvant demander des informations météo très précises.

Le service interrogé : openweather

Avant toute chose, je vous propose de comprendre l'écriture de son URL (bien entendu, toute la doc plutot bien faite est disponible sur https://openweathermap.org/api/weather-map-2), mais je vous en écris ici les grabds principes afin de comprendre la suite de mon article.

Le format de l'url :

http://maps.openweathermap.org/maps/2.0/weather/{op}/{z}/{x}/{y}?date={date}

Les paramètres (entre {} ):

op - Calque de la carte du temps. La liste complètre des calques est disponible ici.

z - Niveau de zoom (numerique)
x - Coordonnées X de la tuile
y - Coordonnées X de la tuile

appid - Clef API personnelle

date - Timestamp UNIX UTC de la date souhaitée comme1527811200. Si la date n'est pas pmentionnée, vous obtiendrez la météo au moment où vous lancerez la requête. Plus d'informations.

Paramètres optionnels :

  • opacity - Nombre flottant entre 0 et 1 définissant l'opécité du calcque. Pa défaut : 0.8
  • palette - Palette de couleurs. Vous pouvez personnaliser la couleur de chaque calque. Vous pouvez aussi créer une palette de couleurs vous-même, et la passer dans l'URL sous la forme {value}:{HEX color};..;{value}:{HEX color}. Vous retrouverez plis d'informations ici.
  • fill_bound - 'true' ou 'false'.
    • Si la valeur est positionnée à 'true', toutes les valeurs en dehors des toutes les valeurs météorologiques en dehors de l'ensemble de valeurs spécifié seront remplies par une couleur correspondant à la valeur spécifiée la plus proche
    • Si la valeur est à false (valeur par défaut), toutes les valeurs météorologiques en dehors de l'ensemble de valeurs spécifié ne sont pas renseignées.
  • arrow_step - Pas des valeurs pour dessiner les flèches représentant le vent, spécifié en pixels (par défaut - 32). Paramètre uniquement pour les couches de vent (WS10, WND).
  • use_norm - 'true' or 'false'. Positionné à 'true', la longueur des flèches reste identique, quelque soit la puissance du vent. (par défaut - 'false': la longueur des flèches est proportionnelle à la puissance/vitesse du vent). Paramètre uniquement pour les valeurs de puissance du vent (WS10, WND).

Exemple :

http://maps.openweathermap.org/maps/2.0/weather/TA2/{z}/{x}/{y}?date=1527811200&opacity=0.9&fill_bound=true&appid={api_key}

 

ATTENTION : Après avoir effectué plusieurs tests, je n'ai jamais réussi à lancer des API pour certaines actions dont les exemples ont été "copiés-collés", (exceptés bien entendu, mon code API dans le copié-collé). Je vous suggère donc de bien tester au cas par cas de ce que vous souhaitez faire.

Aller, pour le fun, la météo à venir à Nancy :

 

NewsletterRestez informé de mon actualité, recevez ma newsletter à chaque nouvel article.
Votre email:
blog