Hallöle!
Ich lasse per CGi Textfelder einlesen und die Inhalte sollen dann in eine Datenbank gespeichert werden oder eben Suchanfragen realisieren. Sobald ich Umlaute drin habe, kommt der liebe Unicodefehler...
Beispielanfrage:
Bisher habe ich im Netz nix hilfreiches gefunden.
Python 2.4, RedHat Linux. MySQLdb ist auch dabei...
Wie kann ich die Codierung ändern?
bewirkt nichts, wenn ich per
konvertiere, geht das logischerweise.
Aber ich will mir ersparen, dass für jedes Textfeld machen zu müssen.
Firefox sagt mir, das Dokument sei UTF-8, Mit Eclipse wird dank dem Makro passend abgespeichert.
Dank für Hilfe!
Edit:
Jetzt bin ich doch über die Lösung gestolpert... warum nciht gleich so *narf*
Darf also hier geschlossen werden... sorry!
Ich lasse per CGi Textfelder einlesen und die Inhalte sollen dann in eine Datenbank gespeichert werden oder eben Suchanfragen realisieren. Sobald ich Umlaute drin habe, kommt der liebe Unicodefehler...
Code:
"""UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 152: ordinal not in range(128)
args = ('ascii', "SELECT dab_id, abbrevation FROM bioc_database WH..._database_has_taxonomy WHERE species LIKE '%\xc3\xb6%')", 152, 153, 'ordinal not in range(128)')
encoding = 'ascii'
end = 153
object = "SELECT dab_id, abbrevation FROM bioc_database WH..._database_has_taxonomy WHERE species LIKE '%\xc3\xb6%')"
reason = 'ordinal not in range(128)'
start = 152 """
Code:
SELECT dab_id FROM taxonomy NATURAL JOIN bioc_database_has_taxonomy WHERE species LIKE '%"+form["taxonomy"].value+"%'"
Python 2.4, RedHat Linux. MySQLdb ist auch dabei...
Wie kann ich die Codierung ändern?
Code:
# -*- coding: latin1 -*-
Code:
unicode('text', 'latin-1')
Aber ich will mir ersparen, dass für jedes Textfeld machen zu müssen.
Firefox sagt mir, das Dokument sei UTF-8, Mit Eclipse wird dank dem Makro passend abgespeichert.
Dank für Hilfe!
Edit:
Jetzt bin ich doch über die Lösung gestolpert... warum nciht gleich so *narf*
Code:
imort sys
reload(sys)
sys.setdefaultencoding("latin1")
Darf also hier geschlossen werden... sorry!
Zuletzt bearbeitet: