Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

SOCKET CLIENT/SERVEUR


Information sur la source

Catégorie :Réseau & internet Classé sous : socket, client, server, connexion, réseau Niveau : Débutant Date de création : 19/10/2004 Date de mise à jour : 19/10/2004 19:48:17 Vu : 9 978

Note :
Aucune note

Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

Description

Voici dépourvu de tout code supperflu un exemple de socket sous Python.
Cette source n'est pas utilisable toute seule, à vous de rajouter ce dont vous avez besoin autour.
 

Source

  • #Client
  • from socket import *
  • # Création de la socket
  • PySocket = socket (AF_INET,SOCK_DGRAM)
  • # Connection au serveur avec comme argument le tuplet (HOST,PORT)
  • PySocket.connect (('localhost',12345))
  • # Réception d'une donnée, avec un buffer de 1024 octets
  • PySocket.recv (1024)
  • # Emission d'une donnée vers le serveur
  • PySocket.send ("Salut serveur")
  • # Fermeture de la socket
  • PySocket.close ()
  • #Serveur
  • from socket import *
  • # Création de la socket
  • PySocket = socket (AF_INET,SOCK_DGRAM)
  • # Bind de la socket avec le tuplet (HOST,PORT)
  • # pour un serveur LAN (local) laissez 'localhost'
  • # pour un serveur internet mettez votre IP à la place
  • PySocket.bind (('localhost',12345))
  • # Réception d'une donnée avec 1024 octets de buffer
  • # Donnee contient la donnée reçue, Client contient l'IP du client qui
  • # a envoyé la donnée
  • Donnee, Client = PySocket.recvfrom (1024)
  • # Envoi d'une donnée vers un Client précisé par son IP
  • # La donnée à mettre dans 'Client' est identique à celle reçue
  • # via rcvfrom () si le client a déjà envoyé une donnée'
  • PySocket.sendto (String,Client)
  • # Fermeture de la socket
  • PySocket.close ()
#Client

from socket import *

# Création de la socket
PySocket = socket (AF_INET,SOCK_DGRAM)

# Connection au serveur avec comme argument le tuplet (HOST,PORT)
PySocket.connect (('localhost',12345))

# Réception d'une donnée, avec un buffer de 1024 octets
PySocket.recv (1024)

# Emission d'une donnée vers le serveur
PySocket.send ("Salut serveur")

# Fermeture de la socket
PySocket.close () 

#Serveur

from socket import *

# Création de la socket
PySocket = socket (AF_INET,SOCK_DGRAM)

# Bind de la socket avec le tuplet (HOST,PORT)
# pour un serveur LAN (local) laissez 'localhost'
# pour un serveur internet mettez votre IP à la place
PySocket.bind (('localhost',12345))

# Réception d'une donnée avec 1024 octets de buffer
# Donnee contient la donnée reçue, Client contient l'IP du client qui
# a envoyé la donnée
Donnee, Client = PySocket.recvfrom (1024)
 
# Envoi d'une donnée vers un Client précisé par son IP
# La donnée à mettre dans 'Client' est identique à celle reçue
# via rcvfrom () si le client a déjà envoyé une donnée'
PySocket.sendto (String,Client)

# Fermeture de la socket
PySocket.close ()

Conclusion

Simple comme Python ;)
A vous de tailler une classe pour gérer vos connections à votre mesure
 

Historique

19 octobre 2004 19:48:18 :
Ajouts de commentaires et meilleure lisibilité

Commentaires et avis

signaler à un administrateur
Commentaire de taz_iup le 20/10/2004 09:10:42

juste pour dire qu'il existe une methode dans le module socket qui s'appele gethostname() et qui renvoi le nom de l'hote et qui permet ainsi de binder sur l'adresse publique de l'ordinateur.

signaler à un administrateur
Commentaire de nttha le 06/01/2006 04:05:09

bien

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

msn client/serveur python [ par tsic ] Bonjour, je suis bloqué ilya preque 2 semaines dans le code suivant. je veut que le client et le serveur envoyent leurs message d'une maniere comme ms Perl to Python [ par mike1310 ] Bonjour,je ne savais pas trop ou poster mon message étant donné qu'il n'y a pas de codes sources pour Perl.J'ai en fait un code en Perl que je dois re Client Serveur Netstat [ par power211 ] Bonjour à tous, je suis un ptit nouveau ds le monde du python, projet d ecole oblige mais c vrai que  le python c rapide comme langage.Bon t Socket+timeout [ par power211 ] Re Bonjour tout lemonde,bon voila j aurai une ptite question sur les sockets plus les timeout.Donc je vais directement aller au but avec un exemple co connexion client/serveur sous linux [ par tsic ] Bonjour,SVP aidez moi à trouver le code du serveur de connexion.j'ai déjà testé celui de windows et ça a marché. Mais mon encadreur demande un serveur TWISTED : Transfert de fichier [ par chmod666 ] Bonjour,je viens enfin de trouver ce qu'il me faut aprés bcps bcps de recherche il faut le dire ... Situation:J'ai un client qui envoie un fichierJ' Socket et Threading [ par dabcorp ] Bonjour , J'ai fait un client/serveur socket , mais je me comprend pas les threads ... Je suis obligé de faire une boucle pour relance le progra serveur python et client visual basic [ par vinz973 ] bonjour je souhaite créer un serveur en python (socket) qui recoive des données d'une client en visual basic (winsock ) en TCP le probl xmlsocket flash et server python [ par WaReD ] salut bon j ai créé un server vb tcp et un client flash xmlsocket tout marche parfaitement en local et sur le net, mais par contre j ai refa Adresse IP FAI [ par dabcorp ] Bonjour , Je recherche un moyen simple d'envoyer un IP contenant l'adresse IP du FAI de mes clients via mail quand celle ci change. J'ai déja fa


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,671 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.