Executer un script Python et transformer le Json resultant

Bonjour,

J’ai un système de chauffage pour lequel le constructeur fournit un site de visu propriétaire.
Je souhaite récupérer les paramètres (température, position de vannes, …) pour les intégrer dans mon HA.
Je suis novice en HA…
J’ai donc un script Python qui récupère plusieurs valeurs sur le site et qui me retourne un Json avec tous mes paramètres. je précise que ce script fonctionne correctement sur le terminal HA.
Voici un extrait du résultat (en réalité il y en a une 40aine):

➜  python_scripts python chaufferie.py
{"t1 ": "24.6", "t2 ": "21.8", "t3 ": "21.4", "tr1 ": "45", "tr2 ": "0"}

j’aimerai donc pouvoir exécuter ce script toutes les minutes et récupérer des sensors T1, T2… TR1, TR2.
J’ai python_script (sans s) déjà installer sur mon HA.

Sauriez-vous m’indiquer le code Yaml à mettre dans le automations.yaml et le config.yaml?

Je sens que ma question est triviale (peut-être même à la limite du stupide) mais je sèche depuis ce matin…

A chaque nouveau problème, j’apprends
Merci pour votre aide
Bonne journée à tous

Salut, plus simple en utilisant un sensor REST je pense

Hello,
Merci pour le tuyau, mais cela ne s’adapte pas à mon cas.
En effet, le script python fait un peu de cuisine pour générer le Json ,qui n’est pas directement fourni par le fabricant (qui envoi un xml de 2500 lignes dans lesquelles il faut aller farfouiller et reformater les données).
Il faudrait donc vraiment que je puisse exécuter le script et « Sensoriser » le Json.
A bientot

Ha okay j’avais compris que le site te retournait un JSON ^^’ désolé

Si tu peux l’executer via command line, c’est app pareil, une vlaue_json qui retourne
Autre solution, script 1: généner une fichier, script 2: rest-intégratoin pour attaquer le fichier
Et … il y a aussi jq via command line…tant des solutions :slight_smile:

1 « J'aime »

Je suis en train d’essayer avec « Command_line » qui semble une piste prometteuse:

command_line: #https://www.home-assistant.io/integrations/command_line/
  - sensor:
      - name: "Chaufferie"
        unique_id: chaufferie
        command: "python3 /homeassistant/python_scripts/chaufferie.py"
        json_attributes:
          - t1
          - t2
        scan_interval: 60
        value_template: "{{ value_json.status }}"

Mais lors de la vérification Yaml j’ai un erreur :
Invalid config for 'command_line' at configuration.yaml, line 175: expected a dictionary for dictionary value...
Pourtant d’après la doc de command_line le dictionnaire est décrit par « json_attribute »

Hello

Si tu as un script python qui tourne déjà et qui est intégré à HA. Peut etre que tu pourrais populer ces entités directement via ton script ?

Un exemple à la fin de ce fichier avec du binary_sensor et du sensor : Github

C’est une idée comme une autre !

La piste à l’air prometteuse
Ca me plait bien :slight_smile:
ca me permettrai même d’y faire mes calculs de puissance, et d’énergie…
Je vais creuser de ce coté

Merci ++ :+1: