Dobra, przeczytałem wiele podobnych pytań i uważam, że postępuję zgodnie z poradą poprawnie, ale jakoś mój kod nadal nie działa.UnicodeEncodeError: kodek 'ascii' nie może kodować znaków u ' u2019' w pozycji 126: porządek nie jest w zakresie (128)
Przetworzyłem plik xml. Czytałem tutaj, że wyjście jest teraz w Unicode. Używam programu piszącego CSV do zapisywania danych wyjściowych do pliku.
Tak, w moim kodzie próbowałem kodować w utf-8 przed użyciem writerow. Dlaczego wciąż dostaję błąd w pisarzu? Moje ostrzeżenie "unicode !!!" nie zostanie zgłoszony, dopóki ten błąd się nie pojawi (używam tego w wielu plikach i działa to dla większości). Właściwie to nie rozumiem, dlaczego pisarz próbuje używać ascii, czy nie powinien spodziewać się utf-8? Wymieniłem utf-8 na ascii w funkcji kodowania tylko dla kopnięć. Takie same wyniki. Proszę pomóż!!!
try:
mystring=elem.find('./'+r2+'Description').text
if isinstance(mystring, unicode):
print("unicode!!!")
mystring.encode('utf-8','ignore')
datalist.append(mystring)
else:
datalist.append(mystring)
except AttributeError:
datalist.append('No text')
c.writerow(datalist)
"Przetworzyłem plik xml. Przeczytałem, że dane wyjściowe są teraz w formacie Unicode." Pokaż, jak analizować XML. –