Ich habe einen Socket-Server, der UTF-8 gültige Zeichen von Clients empfangen soll.
Das Problem ist, dass einige Kunden (vor allem Hacker) die falsche Art von Daten über das Netz senden.
Ich kann den echten Kunden leicht erkennen, aber ich speichere alle gesendeten Daten in Dateien, damit ich sie später analysieren kann.
Manchmal erhalte ich Zeichen wie dieses œ
die die Ursache für die UnicodeDecodeError
Fehler.
Ich muss in der Lage sein, die Zeichenfolge UTF-8 mit oder ohne diese Zeichen zu machen.
Aktualisierung:
In meinem speziellen Fall war der Socket-Dienst ein MTA und daher erwarte ich nur ASCII-Befehle wie z. B.:
EHLO example.com
MAIL FROM: <john.doe@example.com>
...
Ich habe all dies in JSON protokolliert.
Dann beschlossen einige Leute, die keine guten Absichten hatten, alle möglichen Arten von Müll zu schicken.
Deshalb ist es für meinen speziellen Fall völlig in Ordnung, die Nicht-ASCII-Zeichen zu entfernen.