[Python] Socket

Introduction

En python, pour créer des applications en réseau il faut passer par des sockets qui est un objet de communication réseau qui permet d'échanger de l'information sur la couche IP.

image.png

Codage

Quelques explications

Le socket est composé :

Code serveur

import socket

SERVER_IP = '127.0.0.1'
SERVER_PORT = 1234

server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

server_socket.bind((SERVER_IP, SERVER_PORT))

server_socket.listen(5)
print("Serveur en attente de connexions...")

client_socket, client_address = server_socket.accept()
print(f"Connexion entrante de {client_address}")

try:
    data = client_socket.recv(1024)
    print("Message du client :", data.decode())

    response = "Message reçu par le serveur!"
    client_socket.sendall(response.encode())

except ConnectionResetError:
    print("La connexion a été réinitialisée par le client.")

finally:
    client_socket.close()

server_socket.close()

Code client

import socket

SERVER_IP = '127.0.0.1'
SERVER_PORT = 1234

client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

try:
    client_socket.connect((SERVER_IP, SERVER_PORT))
    print("Connecté au serveur.")

    message = "Bonjour, serveur!"
    client_socket.sendall(message.encode())

    data = client_socket.recv(1024)
    print("Message du serveur :", data.decode())

except ConnectionRefusedError:
    print("La connexion a été refusée. Assurez-vous que le serveur est en cours d'exécution.")

finally:
    client_socket.close()

 


Revision #1
Created 11 December 2023 15:46:25 by Elieroc
Updated 11 December 2023 15:57:47 by Elieroc