grep pour nombres de jour restant Tempo

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
Datawolf
Messages : 273
Inscription : 03 avr. 2018, 13:51

grep pour nombres de jour restant Tempo

Message par Datawolf »

Hello,
Quand on est abonné Tempo on récupère d'abord la couleur du jour et/ou du lendemain.
Ensuite on s'intéresse au nombre de jours restant par couleur.
L'URL est: https://particulier.edf.fr/bin/edf_rc/s ... erte=TEMPO
Je me suis inspiré du bash de higgings91 pour récupérer les compteurs.
Mais je suis une quiche en grep
Comment récupérer les 3 valeurs dans ce json ?

Code : Tout sélectionner

{"PARAM_NB_J_BLANC":43,"PARAM_NB_J_ROUGE":22,"PARAM_NB_J_BLEU":263}
Merci d'avance
The Datawolf
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: grep pour nombres de jour restant Tempo

Message par Keros »

Tu peux aussi le faire en lua, il y a plein d'exemple de Json sur le forum. Tu peux regarder mon tuto sur la météo.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Datawolf
Messages : 273
Inscription : 03 avr. 2018, 13:51

Re: grep pour nombres de jour restant Tempo

Message par Datawolf »

Super tuto, merci !
Datawolf
Messages : 273
Inscription : 03 avr. 2018, 13:51

Re: grep pour nombres de jour restant Tempo

Message par Datawolf »

Salut,

Malheureusement, et malgré le curl "-s", j'ai "Access Denied". :|

EDIT: problème résolu
Grâce à ton tuto sur le JSON je devrais pouvoir récupérer la couleur Tempo en dzVents (et abandonnner le bash). :)
dh26
Messages : 1
Inscription : 08 juin 2020, 20:35

Re: grep pour nombres de jour restant Tempo

Message par dh26 »

en bash tu peux utiliser :

Code : Tout sélectionner

TEMPO=$(wget -qO- https://particulier.edf.fr/bin/edf_rc/servlets/TEMPOtempodaysnew?TypeAlerte=TEMPO|sed 's/[{}]//g')

blanc=$(echo $TEMPO|cut -d',' -f1|cut -d':' -f2)
rouge=$(echo $TEMPO|cut -d',' -f2|cut -d':' -f2)
bleu=$(echo $TEMPO|cut -d',' -f3|cut -d':' -f2)
le wget n'est pas bloqué par les cookies avec curl tu peux essayer :

Code : Tout sélectionner

TEMPO=$(curl -s -b 'ak_bmsc=' 'https://particulier.edf.fr/bin/edf_rc/servlets/TEMPOtempodaysnew?TypeAlerte=TEMPO'|sed 's/[{}]//g')
tu forces le cookie ak_bmsc. Cookie de sécurité utilisé par Akamai bot Manager pour le filtrage et le routage des robots. Propriétaire, Persistant.
Datawolf
Messages : 273
Inscription : 03 avr. 2018, 13:51

Re: grep pour nombres de jour restant Tempo

Message par Datawolf »

Pour le curl je m'en suis sorti en spécifiant le user Agent

Code : Tout sélectionner

curl -A 'Wget/1.20.3 (linux-gnu)'
C'est grâce à ça et à ton tuto sur le json que je vais refaire mon bash "Couleur tempo" en dzvents.
Répondre