bonjour a tous,
a première vu ce post peut paraître déjà existant...
mais rassurez vous je viens avec du nouveau !
j'aurais besoin d'aide pour la "vérification" d'un programme. Car en effet la connexion avec les différents clients se fait mais les messages ne s'affichent pas.
qu'est ce qui est faux dans ce que j'ai fait ? (je n'ai pas tout fait mais quand même )
merci d'avance pour vos réponses.

voici mes codes

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
 
import socket
import threading
import sys
import pickle
 
class Serveur():
	"""docstring pour serveur"""
	def __init__(self, hote="localhost", port=4000):
 
		self.clients = []
 
		self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
		self.sock.bind((str(hote), int(port)))
		self.sock.listen(10)
		self.sock.setblocking(False)
 
		accepter = threading.Thread(target=self.acceptation)
		proceder = threading.Thread(target=self.processus)
 
		accepter.daemon = True
		accepter.start()
 
		proceder.daemon = True
		proceder.start()
 
		while True:
			msg = input('->')
			if msg == 'fin':
				self.sock.close()
				sys.exit()
			else:
				pass
 
 
	def acceptation(self):
		print("acceptation initialisée")
		while True:
			try:
				conn, addr = self.sock.accept()
				conn.setblocking(False)
				self.clientes.append(conn)
			except:
				pass
 
	def processus(self):
		print("processus initialisé")
		while True:
			if len(self.clients) > 0:
				for c in self.clients:
					try:
						data = c.recv(1024)
						if data:
							self.message_pour_tous(data,c)
					except:
						pass
 
	def message_pour_tous(self, msg, client):
		for c in self.clients:
			try:
				if c != client:
					c.send(msg)
			except:
				self.clients.remove(c)
 
 
s = Serveur()
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 
import socket
import threading
import sys
import pickle
 
 
class Client():
	"""docstring pour client"""
	def __init__(self, hote = 'localhost', port = 4000):
 
		self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
		self.sock.connect((str(hote), int(port)))
 
		msg_recv = threading.Thread(target=self.msg_recv)
 
		msg_recv.daemon = True
		msg_recv.start()
 
		while True:
			msg = input('->')
			if msg != 'fin':
				self.send_msg(msg)
			else:
				self.sock.close()
				sys.exit()
 
	def msg_recv(self):
		while True:
			try:
				data = self.sock.recv(1024)
				if data:
					print(pickle.loads(data))
			except:
				pass
 
	def send_msg(self, msg):
		self.sock.send(pickle.dumps(msg))
 
 
c = Client()