la premiere ligne du profiling en python indique
ncalls tottime percall cumtime percall filename:lineno(function)
3 6.038 2.013 6.038 2.013 {method 'read' of '_io.BufferedReader' objects}
un 'read' est appelé 3 fois (ncalls) et chaque appel prend 2 secondes (percall) ce qui rajoute 6 secondes au temps total... curieux. il faudrait trouver d'ou vient ce "read".
Je ne vois pas trop ou dans ton script a quoi ce read correspond.
Il faudrait le 'output' (les print) de ton script lors que l'execution pour voir ce qui se passe plus en détail.
sinon utiliser pprofile:
- installation: pip install pprofile
- exécution: pprofile tonscript.py parametres eventuels
Salut kgersen,
J'ai fini par récupérer une connexion internet pour me remettre à tester mon script.
Finalement, j'ai cherché un autre moyen de connexion à mysql et j'ai trouvé PyMySQL.
C'est le jour et la nuit à la place de mysql-connector.
Là où je mettais 37 secondes à récupérer et enregistrer mes consommations électrique de la journée, PyMySQL le fait en moins de 3 secondes.
J'ai encore pas mal de bug Broken pipe que je n'arrive pas à comprendre. Bug qui était déjà présent avec mysql-connector, mais au moins j'ai retrouvé la réactivité du script.
Erreur_Enregist_events : 15/11/2020 à 18:02:07
[Errno 32] Broken pipe
Traceback (most recent call last):
File "/home/pi/Script_Cron_Domotique/Enregistrement_evenements.py", line 107, in <module>
print (DateFrance + " : " + DataDecode + " = Retour du Webserveur avant tout if")
BrokenPipeError: [Errno 32] Broken pipe
Tu aurais une idée pour trouver d'où vient le problème, la ligne communiquée pouvant ne pas toujours être la même ?