Page 1 sur 1

[Résolu] Domoticz 2020.1 quel Python ???

Publié : 25 mars 2020, 18:17
par Dr No
Bonjour à tous,

J'ai un switch virtuel qui lance un petit script python "lanceur.py" ce dernier lance mon programme d'alarme. Tout fonctionnait parfaitement jusqu’à ce que je mette à jour Domoticz. Maintenant je suis en panne ?!
Si je lance mon script depuis Putty, j'ai le message d'erreur suivant :

Code : Tout sélectionner

pi@raspberrypi:~/domoticz/scripts $ python lanceur.py
pi@raspberrypi:~/domoticz/scripts $ Traceback (most recent call last):
  File "/home/pi/al_on.py", line 48, in <module>
    urllib.request.urlopen("http://127.0.0.1/json.htm?type=command&param=switchlight&idx=9&switchcmd=Off&level=0")
AttributeError: 'module' object has no attribute 'request'
Ma version par défaut de Python est 3.7
Dans Putty, si je lance mon programme d'alarme via le script j'ai l'erreur ci-dessus, si je lance directement mon programme d'alarme tout ce passe bien il fonctionne ?!?!

J'aimerais comprendre ce qui se passe !!
Un peu d'aide serait la bienvenue, merci d'avance.

Re: Domoticz 2020.1 quel Python ???

Publié : 25 mars 2020, 18:56
par denis_brasseur

Code : Tout sélectionner

AttributeError: 'module' object has no attribute 'request'
Ton script nécessite t-il la librairie requests ?

Code : Tout sélectionner

pip3 install requests

Re: Domoticz 2020.1 quel Python ???

Publié : 25 mars 2020, 19:56
par Dr No
Le script na pas besoin de la librairie requests mais le programme d'alarme qu'il lance en a besoin

En fait c'est un vieux reste de python 2. quand je suis passé à python 3 j'ai dû modifier mon programme ce qui m'a conduit à "urllib.request.urlopen("http://......")" et ça fonctionnait parfaitement jusqu'à la mise à jour de Domoticz
Je viens de modifier et ne plus utiliser la librairie urllib je fais "requests.post("http://......")"
Ca fonctionne et je pense que c'est plus propre.

J'espère que ça servira à d'autres.