Ho un server socket che dovrebbe ricevere caratteri validi UTF-8 dai client.
Il problema è che alcuni client (principalmente hacker) stanno inviando su di esso tutti i tipi di dati sbagliati.
Sono in grado di distinguere facilmente il client originale, ma sto registrando su file tutti i dati inviati in modo da poterlo analizzare in seguito.
A volte ricevo personaggi come questo œ
che causano l' UnicodeDecodeError
errore.
Devo essere in grado di creare la stringa UTF-8 con o senza quei caratteri.
Aggiornare:
Per il mio caso particolare il servizio socket era un MTA e quindi mi aspetto di ricevere solo comandi ASCII come:
EHLO example.com
MAIL FROM: <john.doe@example.com>
...
Stavo registrando tutto questo in JSON.
Quindi alcune persone là fuori senza buone intenzioni hanno deciso di vendere tutti i tipi di spazzatura.
Ecco perché per il mio caso specifico è perfettamente OK rimuovere i caratteri non ASCII.