
On Friday 10 February 2006 12:02, Diez B. Roggisch wrote:
Wahrscheinlich bekommst du die Daten utf-8 codiert (ja, manche browser machen das).
Nein, UTF-8 ist das was er bekommt nicht, s.u.
Swish-e kann mit unicode so gar nichts anfangen.
UTF-8 ist _nicht_ unicode. UTF-8 ist ein encoding genauso wie latin1 - nur das es durch entsprechende escape-sequenzen _alle_ unicode-zeichen codieren kann. Ich betone das hier so, weil eine Menge Leute das durcheinanderwerfen und dann Probleme entstehen.
Auch wenn ich unten sehe das du das verstanden hast - genug andere Leute leider nicht.
Sorry, du hast vollkommen recht. Das hab ich sehr, sehr unsauber formuliert. (Und ich gebe zu, dass ich auch lange Zeit utf8 (als codierung) und unicode durcheinandergeworfen habe).
Kodier die Daten erst in 'latin-1', bevor du sie swish-e uebergibst. Komplet ungetested :-) koennte folgendes eventuell funktionieren
suchunicode = unicode(suchbegriff,'utf8') suchlatin1 = suchunicode.encode('latin-1')
Das wäre richtig, wenn es denn UTF-8 wäre :) Aber
u'äöü'.encode("latin1")
'\xe4\xf6\xfc'
stimmt. manchmal hilft es erst nachzudenken und dann zu schreiben :-)
zeigt, das die Bytewerte die er bekommt latin1 sind. Er macht sich IMO unnötig Sorgen, alles was passiert ist das er seine strings eben als repr(s) ausgibt und nicht mittels print. Dann bekommen die ihre hex-darstellung statt als bytes ans terminal geschickt zu werden, was dann die entsprechenden Zeichen draus macht.
Wahrscheinlich hatte ich die Frage falsch interpretiert: Ich dachte, dass Stefan keine Treffer hat (obwohl welche da sein sollten), wenn der Suchbegriff Umlaute enthaelt. Aber ich gebe zu, dass das da nicht so steht. Vielleicht kann Stefan ja seine Frage mal praezisieren. Stephan
MfG Diez
_______________________________________________ python-de maillist - python-de@python.net http://python.net/mailman/listinfo/python-de
_______________________________________________ python-de maillist - python-de@python.net http://python.net/mailman/listinfo/python-de