simon91 | Bonjour tout le monde,
J'ai implémenté un client serveur en python pour tester une connexion. Le code que j'ai implémenté contient déjà l'adresse et le port mais je voudrais plutot qu'à l'exécution l'adresse et le port soient fournis en ligne de commande plutot que d'etre dans le code.
Exemple: ./serveur.py 127.0.0.1 1234 à taper en ligne de commande
Si quelqu'un peut m'aider, je n'y arrive pas.
serveur.c
Code :
- import socket
- Sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
- Host = '127.0.0.1' # l'ip locale de l'ordinateur
- Port = 1234 # choix d'un port
- # on bind notre socket :
- Sock.bind((Host,Port))
- # On est a l'ecoute d'une seule et unique connexion :
- Sock.listen(1)
- # Le script se stoppe ici jusqu'a ce qu'il y ait connexion :
- client, adresse = Sock.accept() # accepte
- print "L'adresse",adresse,"vient de se connecter au serveur !"
- while 1:
- RequeteDuClient = client.recv(255) # on recoit 255 caracteres grand max
- if not RequeteDuClient: # si on ne recoit plus rien
- break # on break la boucle
- print RequeteDuClient,"\a" # affiche les donnees envoyees
|
client.c
Code :
- import socket # on importe le module
- Sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM) # on cree notre socket
- # definition des informations :
- Host = '127.0.0.1'
- Port = 1234
- # on se connecte sur le serveur avec les informations ci-dessus
- # assurez-vous d'avoir mis en marche le serveur !
- Sock.connect((Host,Port))
- # On est connecte, on fait une boucle infinie d'inputs pour l'envoi des messages :
- while 1:
- msg = raw_input('>> ') # on rentre des donnees
- Sock.send(msg) # on envoie ces donnees
|
Merci d'avance pour l'aide !
|