Client/Serveur en Python
perreet
Messages postés
230
Date d'inscription
Statut
Membre
Dernière intervention
-
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
- Citizen code python avis - Accueil - Outils
- Filezilla client - Télécharger - Téléchargement & Transfert
- Filezilla client ou serveur ✓ - Forum Réseau