Python3 hat das Unicode-Verhalten geändert, um Ersatzpaare abzulehnen, während python2 nicht.
Es gibt eine Frage hier
Aber es liefert keine Lösung darüber, wie man Ersatzpaare in python2 entfernt oder wie man einen Ersatz escape macht.
Python3 Beispiel:
%Vor%Das '\ xed \ xa0 \ xbd' ist hier nicht richtig utf-8 Zeichen. Und ich möchte sie ignorieren oder ihnen entkommen.
Ist es möglich, in python2 dasselbe zu tun?
Es gibt keine eingebaute Lösung, aber es gibt eine Implementierung von Ersatz-Landschaften in python-future: Ссылка
Fügen Sie from future.utils.surrogateescape import register_surrogateescape
zu den Importen hinzu. Rufen Sie dann die Methode register_surrogateescape()
auf und verwenden Sie den errors='surrogateescape'
Fehlerhandler in encode
und decode
.
Ein Beispiel finden Sie hier
Tags und Links python unicode python-2.x surrogate-pairs