Sto utilizzando un'app Django per esportare una stringa in un file CSV. La stringa è un messaggio inviato tramite un modulo di front-end. Tuttavia, ho ricevuto questo errore quando nell'input viene fornita una virgoletta unicode.Esportazione CSV Unicode Python (utilizzando Django)
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2019'
in position 200: ordinal not in range(128)
Ho cercato di convertire l'unicode in ASCII usando il codice seguente, ma ancora ottenere un errore simile.
UnicodeEncodeError: 'ascii' codec can't encode characters in
position 0-9: ordinal not in range(128)
che ho passato al setaccio decine di siti web e imparato molto su unicode, tuttavia, non sono ancora in grado di convertire questo unicode in ASCII. Non mi interessa se l'algoritmo rimuove i caratteri Unicode. Le righe commentate indicano alcune varie opzioni che ho provato, ma l'errore persiste.
import csv
import unicodedata
...
#message = unicode(unicodedata.normalize(
# 'NFKD',contact.message).encode('ascii','ignore'))
#dmessage = (contact.message).encode('utf-8','ignore')
#dmessage = contact.message.decode("utf-8")
#dmessage = "%s" % dmessage
dmessage = contact.message
csv_writer.writerow([
dmessage,
])
Qualcuno ha qualche consiglio su come rimuovere i caratteri Unicode posso esportarli in CSV? Questo problema apparentemente facile mi ha fatto girare la testa. Ogni aiuto è molto apprezzato. Grazie, Joe
Grazie per la correzione Glenn –