Aller au contenu principal
Bienvenue sur Forum Puppy Linux - Toutou Linux - Astuces - Aides !
Lorsque vous n'êtes pas connectés vous pouvez visiter la totalité du forum mais avec certaines restrictions : cf le règlement pour les visiteurs non connectés. Vous êtes chaleureusement conviés à vous inscrire afin de bénéficier de toutes les fonctionnalités du forum et de participer aux échanges.
Sujet: Comment obtenir des prévisions météorologiques grâce à Météo-France ? (Lu 25 fois) sujet précédent - sujet suivant
0 Membres et 1 Invitédans ce sujet

Comment obtenir des prévisions météorologiques grâce à Météo-France ?

Comme dit arpinux : « Pour connaître la météo du jour, ouvrez votre fenêtre ! »
Moi je dis, si on n'est pas sûr, on peut utiliser son ordinateur…

Le problème
Pour connaître le temps à venir, l'auteur a d'abord essayé de télécharger la page de Météo-France correspondant à son village pour ensuite en extraire les renseignements qui lui semblaient utiles. Malheureusement, ces données se téléchargent une fois sur deux et, certains jours, le site ne veut rien savoir : pas de météo pour l'auteur aujourd'hui. C'est ballot ! (En plus, il ne semble pas légal de s'approprier des données du site sans autorisation.)

Il a ensuite lu la documentation correspondant aux API proposées par le service public. Mais il n'a pas compris grand-chose. Il veut juste une prévision de base, pas l'évolution à la demi-heure d'une quarantaine de facteurs. Pas envie, non plus, d'apprendre à programmer.

Il est tombé ensuite par hasard sur le site https://open-meteo.com/ en pas français comme dirait quelqu'un. Ce site utilise les services météo d'une quinzaine de pays pour fournir gratuitement des renseignements « unifiés ». Oh, miracle, il y a Météo-France dans le panel. Et il suffit de cocher quelques cases pour avoir un résultat. Un service pour les nuls, c'est ce qu'il nous faut.

Avertissement
Pour la suite, on a besoin d'une connexion Internet, des utilitaires curl et jq et d'un minimum de curiosité.

Mise en pratique
On a d'abord besoin de sa localisation (latitude, longitude).
Sur https://www.coordonnees-gps.fr/, on cherche son adresse, par exemple « Place de la Mairie, 81190 Mirandol-Bourgnounac ».
Pourquoi cette adresse ? Parce que ce nom sonne super bien avec l'accent du Sud-ouest.
Donc Mirandol-Bourgnounac, c'est 44.1432866 pour la latitude et 2.1686849 pour la longitude. (C'est en français avec un séparateur anglais pour les décimales).
Petite remarque : le modèle de Météo-France le plus élaboré a une résolution de 1,5 km. Si on n'habite pas en plaine, il est important de ne pas utiliser une ville située à 10 km de son lieu d'habitation, mais de fournir une localisation précise.

On va ensuite sur le site en choisissant le modèle Météo-France soit : https://open-meteo.com/en/docs/meteofrance-api
Après quelques secondes de réflexion, Open-meteo crée une page par défaut avec l'évolution de la température prévue par le modèle AROME sur quatre jours avec un pas d'une heure. On change la latitude et la longitude pour celles de son lieu d'habitation. Pour Time Zone, on choisit Automatically detect.
On décoche la température qui se trouve dans les prévisions horaires.
On descend plus bas sur Current Weather (Météo du jour) et on coche ce qu'on désire obtenir. Par exemple on coche Temperature (température), Wind Speed (vitesse du vent), Wind Guts (rafales), Rain (pluie). (Ceux qui ont du mal avec l'anglais peuvent s'aider du site https://www.deepl.com/fr/translator qui est très performant.)
Plus bas sur la page du site à API Response on peut copier la requête dans le champ API URL soit pour cet exemple :
https://api.open-meteo.com/v1/forecast?latitude=44.1432866&longitude=2.1686849&models=meteofrance_seamless¤t=temperature_2m,wind_speed_10m,wind_gusts_10m,rain&timezone=auto&forecast_days=4
Le service est gratuit, mais on doit se limiter à moins de 10 000 requêtes par jour. Sachant que les paramètres sont actualisés toutes les heures, cela fait vingt-quatre données différentes dans la journée. Avec quatre paramètres, on reste en dessous de cent. Il y a de la marge.

On se lance ?
Dans un terminal, on tape :
curl -s --retry 5 --retry-max-time 30 --url  "https://api.open-meteo.com/v1/forecast?latitude=44.1432866&longitude=2.1686849&models=meteofrance_seamless¤t=temperature_2m,wind_speed_10m,wind_gusts_10m,rain&timezone=auto&forecast_days=4"

On récupère presque immédiatement :
{"latitude":44.14,"longitude":2.17,"generationtime_ms":0.10287761688232422,"utc_offset_seconds":7200,"timezone":"Europe/Paris","timezone_abbreviation":"GMT+2","elevation":402.0,"current_units":{"time":"iso8601","interval":"seconds","temperature_2m":"°C","wind_speed_10m":"km/h","wind_gusts_10m":"km/h","rain":"mm"},"current":{"time":"2026-06-10T09:30","interval":900,"temperature_2m":14.8,"wind_speed_10m":13.5,"wind_gusts_10m":26.6,"rain":0.00}}

Magie de l'informatique : qui se serait douté que Mirandol-Bourgnounac était situé pile-poil à 402 mètres au-dessus du niveau de la mer ?
Plus sérieusement, on voit qu'on est bien à l'heure de Paris, en France (GMT+2 en été) et qu'on utilise des unités françaises (sauf le séparateur décimal qui n'est toujours pas une virgule, coquins d'anglophones).
L'affichage reste un peu brouillon.
Et si on veut afficher seulement la température ?
curl -s --retry 5 --retry-max-time 30 --url  "https://api.open-meteo.com/v1/forecast?latitude=44.1432866&longitude=2.1686849&models=meteofrance_seamless¤t=temperature_2m,wind_speed_10m,wind_gusts_10m,rain&timezone=auto&forecast_days=4" | jq -r '.current.temperature_2m'
On obtient :
14.8

Pas trop mal, mais on peut remplacer le point par une virgule (j'y tiens) ?
curl -s --retry 5 --retry-max-time 30 --url  "https://api.open-meteo.com/v1/forecast?latitude=44.1432866&longitude=2.1686849&models=meteofrance_seamless¤t=temperature_2m,wind_speed_10m,wind_gusts_10m,rain&timezone=auto&forecast_days=4" | jq -r '.current.temperature_2m' | sed 's/./,/g'
On obtient enfin :
14,8 (Pas très chaud pour un mois de juin à 9h 30.)

Une petite synthèse
On va faire un petit script Bash pour afficher nos données proprement.
#!/usr/bin/env bash
#
# Affichage de la météo de Mirandol-Bourgnounac
# Quand on n'est pas Mirandolais,  on change latitude et longitude
# dans la requête et on adapte éventuellement les données à récupérer.

brut=$( curl -s --retry 5 --retry-max-time 30 --url  "https://api.open-meteo.com/v1/forecast?latitude=44.1432866&longitude=2.1686849&models=meteofrance_seamless¤t=temperature_2m,wind_speed_10m,wind_gusts_10m,rain&timezone=auto&forecast_days=4" )

echo "Météo du jour pour Mirandol-Bourgnounac"
echo
echo "Température        : "$( echo $brut | jq -r '.current.temperature_2m' | sed 's/./,/g' )"°C"
echo "Vitesse du vent    : "$( echo $brut | jq -r '.current.wind_speed_10m' | sed 's/./,/g' )" km/h"
echo "Avec des rafales à : "$( echo $brut | jq -r '.current.wind_gusts_10m' | sed 's/./,/g' )" km/h"
pluie=$( echo $brut | jq -r '.current.rain' | sed 's/./,/g' )
if [ "$pluie" == "0" ]
 then
 pluie="   Pas de pluie"; echo $pluie
 else
 echo "Pluie             : "$pluie" mm"
fi

sleep 15

On peut placer le script meteo_france.sh dans un répertoire ~/bin et le rendre exécutable.
Avec rxvt, on peut ouvrir une simple fenêtre par :
rxvt -geometry 40x8 -bl +sb -e /root/bin/meteo_france.sh

Si on a roxterm, je propose :
roxterm --geometry=40x8 --hide-menubar -z 2 -T "Météo du jour" -e /root/bin/meteo_france.sh
(Si quelqu'un sait cacher la barre de défilement du terminal, cela serait plus joli…)

On peut mettre cela dans les raccourcis clavier de JWM pour lancer la prévision au clavier (Super+m) :
<Key mask="4" key="m">exec: rxvt -geometry 40x8 -bl +sb -e /root/bin/meteo_france.sh</Key>

C'est le petit programme que j'utilise quand mon village (ou mon ordinateur) est bloqué par le site de Météo-France. On peut ajouter assez facilement de nombreux paramètres, le plus long étant de les interpréter ensuite.

En espérant vous avoir donné envie d'aller plus loin, je vous laisse jouer avec vos claviers. Moi par ma fenêtre, pas un nuage : ça va encore taper sévère aujourd'hui !
Cum facis quod potes, significat te facere quod debes.

 

Re : Comment obtenir des prévisions météorologiques grâce à Météo-France ?

Répondre #1
Salut @Polo l’asticot‍ ,

Citer
(Si quelqu'un sait cacher la barre de défilement du terminal, cela serait plus joli…)
Avec urxvt et rxvt, c'est :
urxvt +sb

avec roxterm, je ne sais pas. N'y a-t-il pas un fichier .rc quelque part ?

En tout cas bien trouvé.

Bravo Polo dans son coing.
Vive Toutou Linux
"Tout le monde a le droit de vivre en paix !" dit une dame africaine.

 
Simple Audio Video Embedder