IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Socket en python


Sujet :

Python

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2013
    Messages : 139
    Par défaut Socket en python
    Bonjour,
    J'ai crée deux programmes client-serveur qui permettent au serveur de récupérer une image du client via une socket et ça marche bien.
    Maintenant j'ai crée un deuxième client pour récupérer deux photos en même temps mais mon programme marche pas.
    Pouvez-vous m'aider svp?
    Voici mes programmes:
    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
    import socket
     
    for i in range(19,20):
            host = '192.168.0.'
            host+=str(i)
            port = 5656
            s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            s.connect((host, port))
            tailleImage = s.recv(8)
            tailleImage = int(tailleImage.decode())
            contenuTelecharge = 0
            fichierImage = open("image"+str(i)+".jpg","wb")
            while contenuTelecharge < tailleImage:
                #On lit les 1024 octets suivant
                    contenuRecu = s.recv(1024)
     
                    #On enregistre dans le fichier
                    fichierImage.write(contenuRecu)
                    #On ajoute la taille du contenu recu au contenu telecharge
                    contenuTelecharge += len(contenuRecu)
     
            fichierImage.close()
            s.close()
    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
    import socket
     
    host = '192.168.0.20'
    port = 5656
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.connect((host, port))
    tailleImage = s.recv(8)
    tailleImage = int(tailleImage.decode())
    contenuTelecharge = 0
    fichierImage = open("image20.jpg","wb")
    while contenuTelecharge < tailleImage:
        #On lit les 1024 octets suivant
    	contenuRecu = s.recv(1024)
    	#On enregistre dans le fichier
    	fichierImage.write(contenuRecu)
    	#On ajoute la taille du contenu recu au contenu telecharge
    	contenuTelecharge += len(contenuRecu)
    fichierImage.close()
    s.close()

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 726
    Par défaut
    Salut,

    Citation Envoyé par zsoufianz Voir le message
    Maintenant j'ai crée un deuxième client pour récupérer deux photos en même temps mais mon programme marche pas.
    Pouvez-vous m'aider svp?
    Dans la programmation socket, le client fait "connect" et le serveur fait "accept".
    Si ce genre de base là n'est pas encore "assimilé", çà ne marchera jamais...

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2013
    Messages : 139
    Par défaut
    Merci pour votre réponse. pouvez vous me clarifier plus?

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 726
    Par défaut
    Citation Envoyé par zsoufianz Voir le message
    Merci pour votre réponse. pouvez vous me clarifier plus?
    Vous ouvrez votre tuto. préféré (dans le Swinnen, c'est le chapitre 20) pour regarder à quoi ressemblent "serveur" et "client" dans une communication "socket".
    Puis vous relisez votre code pour vous assurer d'y retrouver ces choses là.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. [Python 2.X] Gros problème de socket avec Python
    Par Tornade8912 dans le forum Général Python
    Réponses: 11
    Dernier message: 08/07/2016, 13h25
  2. [Python 3.X] Module socket sur python
    Par python_user dans le forum Réseau/Web
    Réponses: 1
    Dernier message: 01/02/2015, 18h56
  3. python, tkinter et les sockets (et les threads)
    Par bomberwaterman dans le forum Réseau/Web
    Réponses: 6
    Dernier message: 02/01/2009, 19h53
  4. socket bloquante python?
    Par kakuzu dans le forum Réseau/Web
    Réponses: 5
    Dernier message: 14/05/2008, 23h33
  5. python & flash : communication via socket -> Null byt
    Par arcane14 dans le forum Réseau/Web
    Réponses: 3
    Dernier message: 30/01/2006, 21h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo