Client/Serveur en Python
perreet
Messages postés
240
Statut
Membre
-
DarkGeek -
DarkGeek -
Bonjour, je voudrais faire un dialogue client/serveur en Python mais je ne m'en sort vrément pas.
Code du serveur :
# -*- coding: cp1252 -*-
ip=raw_input("Entrez votre addresse ip : ")
p=int(raw_input("Port : "))
import socket
serveur=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
serveur.bind((ip,p))
serveur.listen(2)
while 1:
____tube, addr =serveur.accept()
____print "Connecté à :",addr
____while 1:
________data=tube.recv(1024)
________L=data.split('@')
________if(L[1]=='exit'):
____________print "\n",L[0],"s'est déconecter\n"
____________break
________else:
____________print '\n--',L[0],':\n\t',L[1],'\n'
________tube.send("serveur@"+raw_input("Message >>> "))
code du client:
ip=raw_input("Entrez l'ip de connexion : ")
import socket
client=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
p=int(raw_input("port : "))
pseudo=raw_input("Entrez votre pseudo : ")
client.connect((ip,p))
while 1:
____texte=raw_input("Message >>> ")
____mess=pseudo+'@'+texte
____client.send(mess)
____if texte=="exit":
________break
____L=client.recv(1024).split('@')
____print "\n--",L[0],":\n\t",L[1],"\n"
Le problème c'est qu'ils peuvent parler chacun leur tour mais pas deux fois de suite ou pas en même temps.
En gros il faudrais pouvoir écouter le port en même temps de pouvoir envoyer un message ...
Code du serveur :
# -*- coding: cp1252 -*-
ip=raw_input("Entrez votre addresse ip : ")
p=int(raw_input("Port : "))
import socket
serveur=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
serveur.bind((ip,p))
serveur.listen(2)
while 1:
____tube, addr =serveur.accept()
____print "Connecté à :",addr
____while 1:
________data=tube.recv(1024)
________L=data.split('@')
________if(L[1]=='exit'):
____________print "\n",L[0],"s'est déconecter\n"
____________break
________else:
____________print '\n--',L[0],':\n\t',L[1],'\n'
________tube.send("serveur@"+raw_input("Message >>> "))
code du client:
ip=raw_input("Entrez l'ip de connexion : ")
import socket
client=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
p=int(raw_input("port : "))
pseudo=raw_input("Entrez votre pseudo : ")
client.connect((ip,p))
while 1:
____texte=raw_input("Message >>> ")
____mess=pseudo+'@'+texte
____client.send(mess)
____if texte=="exit":
________break
____L=client.recv(1024).split('@')
____print "\n--",L[0],":\n\t",L[1],"\n"
Le problème c'est qu'ils peuvent parler chacun leur tour mais pas deux fois de suite ou pas en même temps.
En gros il faudrais pouvoir écouter le port en même temps de pouvoir envoyer un message ...
A voir également:
- Client/Serveur en Python
- Cybera client - Télécharger - Divers Réseau & Wi-Fi
- Changer serveur dns - Guide
- Filezilla client - Télécharger - Téléchargement & Transfert
- Formate pour taxer client frigo vide ✓ - Forum Matériel & Système
- Formate pour taxer client 500€ - Forum PDF