Ben cvs içe çalışıyorum, ama bu hatayı'ascii' codec bileşeni konumunda 9 karakteri u ' u2013' kodlamak olamaz: aralıkta değil sıralı (128)
UnicodeEncodeError at /brokers/csv/'ascii' codec can't encode character u'\u2013' in position 9: ordinal not in range(128)
Unicode olsun) 758-9800
Ben .encode denedi, unicode(), vb ve hiçbir şey bir kütüphane gerekirse bilmiyorum, çalışır: hata ipucu
kodlanmış edilemedi dize/deşifre oldu ya da başka bir şey, çünkü diğer makinede de aynı koda sahibim ve iyi çalışıyor.
def exportar_a_csv_brokers(request):
#Fecha actual
hoy = datetime.now().date()
#Creado el:
creado_hoy = hoy.strftime("%m/%d/%Y")
response = HttpResponse(mimetype='text/csv')
response['Content-Disposition'] = 'attachment;filename=
"Reporte de Brokers ' + creado_hoy + '.csv"'
response['Content-Type'] = 'text/csv; charset=utf-8'
response.write("\xEF\xBB\xBF")
writer = csv.writer(response)
brokers = Broker.objects.all()
writer.writerow(['Creado el: ' + creado_hoy + ' '])
writer.writerow([''])
writer.writerow(
['Apellido Paterno', 'Nombre', '# Broker', '# Licencia de Seguro', 'ID Federal', 'Nombre Agencia', 'Teléfono',
'Correo Electrónico', 'Fax', 'Calle', '# Interior', 'Colonia', 'Código Postal', 'Estado', 'Ciudad'])
for broker in brokers:
#Imprimiendo resultados
writer.writerow([broker.ap_paterno, broker.nombre, broker.no_broker,
broker.no_licencia_seguro, broker.id_federal, broker.nombre_agencia, broker.telefono,
broker.correo_electronico, broker.fax,
broker.calle, broker.no_interior, broker.colonia, broker.codigo_postal, broker.estado,
broker.ciudad])
return response
[python-unicodecsv] (https://github.com/jdunck/python-unicodecsv) kitaplığını denetleyin. –