Scrat95220 / DomoticzGazpar

Import data from GDRF to Domoticz
GNU General Public License v3.0
17 stars 11 forks source link

Plantage premier lancement (bis) #25

Open fd025270 opened 2 years ago

fd025270 commented 2 years ago

Bonjour,

J'ai moi aussi un probleme au lancement du script manuellement.

C'est la premiere utilisation que j'en fait.

Lorsque je lance, j'ai le message suivant 👍

{"22148914522155":{"idPce":"22148914522155","releves":[],"frequence":null}}
Traceback (most recent call last):
  File "./gazpar.py", line 277, in <module>
    main()
  File "./gazpar.py", line 269, in main
    dtostr(today))
  File "./gazpar.py", line 146, in update_counters
    index = j[str(numPce)]['releves'][0]['indexDebut']
IndexError: list index out of range

Il recupere bien le PCE mais j'ai l'impression qu'il ne recupere pas les données de consommation.

Pourtant, sur le site de GRDF, j'ai bien les conso qui remontent depuis Septembre 2021.

Dans le fichier de log j'ai ceci 👍


2022-01-19 10:46:49,171 logging in as fa********@gmail.com...
2022-01-19 10:46:49,947 logged in successfully!
2022-01-19 10:46:49,948 retrieving data...

Il ne prend pas les data visiblement....

pbda commented 2 years ago

Quelquefois, GRDF retourne des données vides. Exemple de données retournées:

{"23115195303188":{"idPce":"23115195303188","releves":[],"frequence":null}}

d'où l'erreur.

fd025270 commented 2 years ago

Merci pdba, j'étais justement en train de reprendre le code.

Et effectivement, ce qui se passe, c'est que j'ai les données avec 2 jours d'écart. Aujourdhui, 19/01, je vais chercher les données du 18 et du 19/01. Sauf que j'ai des données que jusqu'au 17/01

Du coup, je suis en train de voir comment chopper les data à J-2

update_counters(token, dtostr(today - relativedelta(days=int(nbDaysImported))), \ dtostr(today))

fd025270 commented 2 years ago

Je viens de modifier la dite ainsi, de facon a ne remonter que les data jusqu'a 2 jours avant aujourdhui

update_counters(token, dtostr(today - relativedelta(days=int(nbDaysImported))), \ dtostr(today- relativedelta(days=int(2)))) La requete API se fait bien. Les valeurs sont recupérées, mais l'update dans Domoticz ne marche pas. Je dois avoir un probleme de conf

`2022-01-19 13:15:42,258 logged in successfully! 2022-01-19 13:15:42,259 retrieving data... 2022-01-19 13:15:42,441 Domoticz call - HttpError :{'name': '', 'url': 'http://localhost:8080/json.htm?idx=2629&param=udevice&type=command&svalue=1499%3B115000%3B2022-01-13', 'fp': <http.client.HTTPResponse object at 0x7621d8d0>, 'delete': False, 'msg': 'Unauthorized', 'hdrs': <http.client.HTTPMessage object at 0x7621d970>, '_closer': <tempfile._TemporaryFileCloser object at 0x7621d890>, 'file': <http.client.HTTPResponse object at 0x7621d8d0>, 'code': 401}

`

didi31 commented 2 years ago

HOSTNAME=http://127.0.0.1:8080 => plus d'erreur NB_IMPORTED_DAYS = 28 fonctionne mais pas à 30

fd025270 commented 2 years ago

Merci. J'avais vu effectivement, localhost il n'en veut pas.

Je vais tester à 28. Mais j'ai tenté d'importer tout mon historique : 120 jours.

J'ai du y aller a taton car pour certains jours ca plante mais on ne sait pas quand et ca bloque le reste de l'importation. Du coup, j'ai fait par palier de 5 ou 10 jours

fd025270 commented 2 years ago

J'ai toujours des galeres d'execution.

J'ai remis le script original. Mais il semble qu'il ne gere pas les exceptions quand les données ne remontent pas

pi@raspberrypi:~/domoticz/plugins/DomoticzGazpar $ ./gazpar_backup.py 22148914522155 2022-01-19 {"22148914522155":{"idPce":"22148914522155","releves":[{"dateDebutReleve":"2022-01-19T06:00:00+01:00","dateFinReleve":"2022-01-20T06:00:00+01:00","journeeGaziere":"2022-01-19","indexDebut":null,"indexFin":1442,"volumeBrutConsomme":7,"energieConsomme":75,"pcs":null,"volumeConverti":null,"pta":null,"natureReleve":"Informative Journalier","qualificationReleve":"Mesur\u00e9","status":null,"coeffConversion":11.210000000000001,"frequenceReleve":null,"temperature":null}],"frequence":null}} 2022-01-19 75 None Invalid Entry Traceback (most recent call last): File "./gazpar_backup.py", line 277, in <module> main() File "./gazpar_backup.py", line 269, in main dtostr(today)) File "./gazpar_backup.py", line 198, in update_counters domoticzrequest(url_current) UnboundLocalError: local variable 'url_current' referenced before assignment

Sur le site GRDF, je n'ai pas de data en date du 18/01, mais j'en ai une en date du 19/01. Cette derniere remonte bien dans le script. Du coup, ca plante sur le 18 et ca n'insere pas le 19.

Je vais regarder comment mettre une exception. A moins que tu ais une idée ? :-)

Scrat95220 commented 2 years ago

J'ai toujours des galeres d'execution.

J'ai remis le script original. Mais il semble qu'il ne gere pas les exceptions quand les données ne remontent pas

pi@raspberrypi:~/domoticz/plugins/DomoticzGazpar $ ./gazpar_backup.py 22148914522155 2022-01-19 {"22148914522155":{"idPce":"22148914522155","releves":[{"dateDebutReleve":"2022-01-19T06:00:00+01:00","dateFinReleve":"2022-01-20T06:00:00+01:00","journeeGaziere":"2022-01-19","indexDebut":null,"indexFin":1442,"volumeBrutConsomme":7,"energieConsomme":75,"pcs":null,"volumeConverti":null,"pta":null,"natureReleve":"Informative Journalier","qualificationReleve":"Mesur\u00e9","status":null,"coeffConversion":11.210000000000001,"frequenceReleve":null,"temperature":null}],"frequence":null}} 2022-01-19 75 None Invalid Entry Traceback (most recent call last): File "./gazpar_backup.py", line 277, in <module> main() File "./gazpar_backup.py", line 269, in main dtostr(today)) File "./gazpar_backup.py", line 198, in update_counters domoticzrequest(url_current) UnboundLocalError: local variable 'url_current' referenced before assignment

Sur le site GRDF, je n'ai pas de data en date du 18/01, mais j'en ai une en date du 19/01. Cette derniere remonte bien dans le script. Du coup, ca plante sur le 18 et ca n'insere pas le 19.

Je vais regarder comment mettre une exception. A moins que tu ais une idée ? :-)

Essai de mettre à jour le script. J'avais le même soucis pour la date du 18/01 et j'ai poussé une correction hier

fd025270 commented 2 years ago

Merci , je vais regarder ca

fd025270 commented 2 years ago

Top !

Bien vu la correction. J'aurais (tenté) de faire la meme chose

Merci en tout cas :-)