Bonsoir,

en faisant mon chat en python je suis tomber sur une erreur dans le recv.

Je ne comprend pas cette erreur, pouvais vous m'aider :
serveur :
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
import sys,os,socket,select 	
sockEcoute = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0)  
sockEcoute.bind(("",8801)) 
sockEcoute.listen(5) 	
nbCnxOuvertes = 0
lecteursPotentiels = [sockEcoute] 	
first = True 
while first or nbCnxOuvertes > 0:
	first = False 
	readers,writers,errors = select.select(lecteursPotentiels,[],[],60) 
	for sockPret in readers:
		if sockPret == sockEcoute: 
			sockDialogue,(adresse,port) = sockEcoute.accept() 
			lecteursPotentiels.append(sockDialogue) 
			print "Nouvelle connexion a partir de l'adresse %s sur le port %d..."%(adresse,port) 
			nbCnxOuvertes+=1
		else: 
			msg=sockPret.recv(1024) 
			if (len(msg) == 0):
				print "Message vide. Fermeture de la connexion ..." 
				sockPret.close() 
				for i in xrange(1,len(lecteursPotentiels)):
					if lecteursPotentiels[i] == sockPret: 							lecteursPotentiels.pop(i)
					nbCnxOuvertes-=  1 
			else:
				os.write(1,msg) 
				sockEcoute.close()
print "Plus de connexion. Au revoir !"
sys.exit(0)
client :
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
import select, socket, sys,os
 
 
 
 
rfd=os.open("sol3.txt",os.O_RDONLY)
IP = 'localhost'
PORT = 8801 
ADS = (IP, PORT)
 
soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
soc.connect(ADS)
 
#soc.send(ndu)
#data=os.read(rfd,1000)
#soc.send(data)	
while 1:
 
	data2 = raw_input("s>>")
	if  data2=="q" : break
	soc.send(data2)
	data2 = soc.recv(1024)
	if not data2: break
	print data2
	soc.close()
Merci d'avance pour la reponse.