Page 3 sur 4

Re: Meilleur méthode pour récupérer valeur visual crossing?

Publié : 21 janv. 2025, 08:04
par Dreamer
Comme ma requête n'est pas la bonne (à savoir : clouds4h = jsonValeur.hours[4].cloudcover), le résultat est "attempt to index a nil value (field 'hours')".

Je recherche donc la bonne requête pour avoir une prévision (cloud ds l exemple) dans 4h :P

Re: Meilleur méthode pour récupérer valeur visual crossing?

Publié : 21 janv. 2025, 12:20
par Keros
clouds4h = jsonValeur.hours[4].cloudcover n'est pas ta requête API, c'est pour récupérer une donnée. La requête API commence pas HTTP et peut être coller dans un navigateur pour en avoir le résultat.

Tu peux regarder mon Tuto sur OpenWeatherMap, c'est le même principe (lien dans ma signature).

Re: Meilleur méthode pour récupérer valeur visual crossing?

Publié : 21 janv. 2025, 13:16
par Dreamer
Keros a écrit : 21 janv. 2025, 12:20 La requête API commence pas HTTP et peut être coller dans un navigateur pour en avoir le résultat.
Ok. Ma requête est celle du script partagé par jeje : https://weather.visualcrossing.com/Visu ... tType=json

Re: Meilleur méthode pour récupérer valeur visual crossing?

Publié : 21 janv. 2025, 19:02
par Keros
C'est la réponse à la requête qu'il faut analyser.

Tu as regardé mon tuto ?

Re: Meilleur méthode pour récupérer valeur visual crossing?

Publié : 21 janv. 2025, 22:29
par jeje
Bonsoir Dreamer, je pense qu'il faut aller voir sur le site de visual crossing pour avoir la requête nécessaire pour récupérè la météo par heure, parce que le script récupère la météo des 7 prochains jours même si je ne m'en sers pas totalement il faut que j'approfondisse encore pour ne récupérè que ce dont j'ai besoin.

L'api donner dans le script n'est qu'un exemple fonctionnel mais qui ne correspondra pas forcement a tout le monde, comme dis plus haut il récupère les 7 prochains jours à partir du moment ou est lancer la requête.Si je ne me trompe pas pour récupérer la météo de 10h comme tu le souhaite il faudra lancer ton script a 6:00h.

je pense que L’API dois ressembler a ça:
https://weather.visualcrossing.com/Visu ... /timeline/.. localisation ../tomorrow?unitGroup=metric&include=fcst%2Chours&key= .. key api ..&contentType=json

Perso je lance le script toute les 30 min comme çà le device cloud est toujours a jour ainsi que les autres devices.

Re: Meilleur méthode pour récupérer valeur visual crossing?

Publié : 22 janv. 2025, 10:49
par Dreamer
Je me rapproche de la solution mais ce n'est pas encore ça :D J'essaye de récupérer la couverture nuageuse du jour entre 13h et 15h.

L'API testé : https://weather.visualcrossing.com/Visu ... cloudcover

mais le résultat est bizarrement trop "fourni" :
[{"cloudcover":98.0,"hours":[{"cloudcover":100.0},{"cloudcover":88.7},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":99.3},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":77.7},{"cloudcover":86.5}]}],"alerts":[],"currentConditions":{"cloudcover":100.0}}

Re: Meilleur méthode pour récupérer valeur visual crossing?

Publié : 22 janv. 2025, 12:28
par Keros
Tu dois avoir les données pour les 24 prochaines heures.

Re: Meilleur méthode pour récupérer valeur visual crossing?

Publié : 22 janv. 2025, 14:29
par Dreamer
Oui je pense mais je fais comment pour récupérer, par exemple, la donnée ds 4 heures?
J'avais pensé à : cloudcoverhour14h = jsonValeur.days[4].cloudcover :?
mais j'ai une erreur "attempt to index a nil value"

Re: Meilleur méthode pour récupérer valeur visual crossing?

Publié : 22 janv. 2025, 18:57
par Keros
Tu as essayé ceci : cloudcoverhour14h = jsonValeur.days[4].cloudcover[4] (sans le json complet, impossible de vérifier ce que j'écris)

Re: Meilleur méthode pour récupérer valeur visual crossing?

Publié : 22 janv. 2025, 19:23
par Dreamer
Merci de m'aider. Non j'ai toujours la même erreur.

Pour être complet, ma requête API est la suivante :
https: //weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/Lat,Long/2025-01-22/?unitGroup=metric&lang=fr&key=MaClé&contentType=json&elements=cloudcover&include=hours

Ce qui génère de Visual Crossing :
{"queryCost":1,"latitude":000,"longitude":000,"resolvedAddress":"000,000","address":"000,000","timezone":"Europe/Paris","tzoffset":1.0,"days":[{"cloudcover":98.8,"hours":[{"cloudcover":100.0},{"cloudcover":88.7},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":99.3},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":100.0},{"cloudcover":94.5},{"cloudcover":88.1}]}]}