>> Tecnologia elettronica >  >> Telefoni >> Segreterie telefoniche

Invio di Messaggi tra PC in Rete: Tutorial Python Socket

Hai bisogno di inviare un messaggio da un computer a un altro nella stessa rete? La libreria socket di Python lo rende semplice. Ecco un esempio completo e annotato.

Prerequisiti

Lato Server (Ricevitore) — Esegui Questo Per Primo

import socket # Crea socket server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server.bind(('0.0.0.0', 1234)) # Ascolta su tutte le interfacce server.listen(1) print("In attesa di connessione...") conn, addr = server.accept() print(f"Connesso da {addr}") while True: data = conn.recv(1024).decode() if not data: break print(f"Ricevuto: {data}") response = input("Rispondi: ") conn.send(response.encode()) conn.close() 

Lato Client (Mittente)

import socket # Ottieni hostname/IP di destinazione hostname = input("Inserisci hostname o IP di destinazione: ") # Crea socket e connetti client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) client.connect((hostname, 1234)) # Invia messaggio message = input("Inserisci messaggio: ") client.send(message.encode()) # Ricevi risposta response = client.recv(1024).decode() print(f"Risposta: {response}") client.close() 

Concetti Chiave Spiegati

Considerazioni per Produzione

Per applicazioni reali, aggiungi: gestione errori (try/except), timeout, framing messaggi (prefissi di lunghezza o delimitatore), cifratura (SSL/TLS), autenticazione, e threading per connessioni concorrenti.

Alternativa: Librerie di Livello Superiore

Considera asyncio, websockets, ZeroMQ, o approcci basati su HTTP (Flask/FastAPI) per applicazioni di rete più robuste.

  1. Trovare il numero di telefono del tuo operatore a lunga distanza
  2. Come controllare i messaggi da un altro telefono Fido
  3. Qual è il "Cervello" di un Computer? (Suggerimento: Non Router o Modem)
  4. Strumenti che registrano e riproducono i clic: panoramica software di automazione
  5. Cos'è il Segnale SOS? Chiamata di Emergenza in Codice Morse Spiegata
  6. Bloccare i pop-up su Answers.com (e su qualsiasi sito)