ich habe immer wieder das Problem, das ein auf Linux Ubuntu laufender Code Probleme mit der Codierung hat.
Wir haben im deutschen ja öäü....
Und diese werfen an verschiedenen Stellen immer wieder eine Exception.
Beispiel:
Code: Alles auswählen
txt_filename = 'AS_%s.txt' % (code)
buffer = cStringIO.StringIO()
buf = codecs.getwriter("cp1252")(buffer)
#buf=StringIO.StringIO() # io.BytesIO()
buf.write('[%s] %s' % (self.default_code, self.name))
buf.write('\n\n')
buf.write(self.description_sale)
buf.write('\n\n')
buf.write(cleanhtml(self.description_long))
buf.write('\n\n')
for line in self.technical_data_line_ids:
buf.write(line.technical_data_id.name)
buf.write('\n')
for val in line.value_ids:
buf.write(' %s: %s' % (val.value_id.name, val.name))
buf.write('\n')
buf.write('\n\n')
buf.write('Hersteller: ')
buf.write('\n\n')
buf.write('Artikelnummer: %s' % self.default_code)
buf.seek(0)
ftp.storbinary("STOR "+txt_filename, buf)
UnicodeEncodeError: 'charmap' codec can't encode character u'\u03a6' in position 27: character maps to <undefined>
Die Daten kommen von einer Postgres Datenbank und werden über FTP auf einen Server gespeichert.
Wie muss man eine Python Klasse definieren, damit der Zeichensatz für Deutsch paßt?
Danke!