Un grand merci à Dathosim pour ce script !
Je suis sur une install HA OS, et par défaut le cron daemon n’est pas lancé. Un container docker n’est pas censé avoir des taches en background. Je n’ai pas voulu changé ce principe.
J’ai copié le script dans le répertoire /config/python_scripts et déclaré une commande shell:
shell_command:
pronote_get_data: python /config/python_scripts/pronote.py
J’ai défini une automation qui s’exécute toutes les 10mn et appelle le service shell_command.pronote_get_data
Pour contourner le problème des modules python « pronotepy » et « pycryptodome-3.14.0.dist-info » qui n’existent pas dans le container Home Assistant, je les ai copié dans un répertoire : /config/python_scripts/local-packages.
Je les avais d’abord installé dans le container SSH. Il suffit de les copier depuis l’install Python de ce container, dans mon cas sur un PC /usr/lib/python3.9/site-packages/.
Il faut modifier le script Python pronote.py pour qu’il aille les chercher en ajoutant au tout début du fichier :
import sys
sys.path.append("/config/python_scripts/local-packages")
Sinon il doit y avoir moyen d’utiliser un Command Line Sensor qui permet de récupérer directement des données json renvoyées par la sortie du script sans passer par un fichier.