Bonjours a tous,
Je souhaiterais créer un script python qui me permet de recup des variables d'un fichier .txt sur internet. Ceci dans le but d'allumer ou éteindre une LED en passant par la modification de la variable de ce fichier .txt a distance.
J'ai essayer ce script en récupérant des "bout" de code a droite et à gauche mais ça fonctionne pas ...
Le code ce lance, j'obtient:
Mais rien ne se passe, pas d'indication de " new mails","no new mails" ... ou même une led qui s'allume ....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Python 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> ================================ RESTART ================================ >>> connecté Le programme tourne ouverture du port port ouvert
Sur mon arduino j'ai un programme qui me dit que si la variable est "m" alors jallume la LED verte, si c'est "n" la rouge et enfin "-1" la BLEU ! ce programme fonctionne bien, c'es juste la ârtie python qui coince ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 import urllib cmd = [] print "connecté" print "Le programme tourne" import serial a = 0 def recup(): * * * * * * * * * * * * * * * * * * * * *a1 = urllib.urlopen("http://modelismebychico.free.fr/g.txt") ## Récup des valables; 1 fichier par led * * * * * * * * * * * * * * * *## Cette variable permet de couper le script, sinon, tuer le script sur le PC laisse le port com9 oqp * * * * * * * *if a1.readline != "": * * * * * * * * * * * *a = a1.readline() * * * * * * * * * * * *if a == "ERROR": * * * * * * * * * * * * * * * *ser.write("-1") * * * * * * * * * * * * * * * *print a * * * * * * * *else: * * * * * * * * * * * *if a > 0: * * * * * * * * * * * * * * * *ser.write("m") * * * * * * * * * * * *else: * * * * * * * * * * * * * * * *ser.write("n") * * * * * * * * * * * * * * * *print str(a) + ' new mail(s) !' * * * * * * * * * * * * * * *recup() print "ouverture du port" ser = serial.Serial() ser.setPort("COM3") ser.baudrate = 57600 ser.close() ser.open() print "port ouvert" recup() if (ser.isOpen()): * * * *recup()
merci a vous
Bon j'ai rebosser un peu le truc et il se lance enfin mais le problème est qu'il me dit toujours "news mails" même quand j'ai "0" dans mon fichier texte en ligne *:smiley-yell:
merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 import feedparser import serial import time import urllib # ------------------------------------------------------------------------------ # request = "http://modelismebychico.free.fr/g.txt" SERIALPORT = "COM3" delay = 2 # ------------------------------------------------------------------------------ # def check_gmail (request): try: newmails = urllib.urlopen("http://modelismebychico.free.fr/g.txt") except: return 'ERROR' else: return newmails # ------------------------------------------------------------------------------ # try: ser = serial.Serial("COM3", 9600) except: print 'No device connected !' else: while True: reply = check_gmail(request) if reply == 'ERROR': ser.write(-1) print reply else: if reply > 0: * ser.write("m") else: * ser.write("n") print str(reply) + ' new mail(s) !' time.sleep(delay)
Partager