Được rồi, tôi đã đọc qua nhiều câu hỏi tương tự và tôi tin rằng tôi đang theo đúng lời khuyên, nhưng bằng cách nào đó mã của tôi vẫn không hoạt động.UnicodeEncodeError: 'codec ascii' không thể mã hóa ký tự u ' u2019' ở vị trí 126: thứ tự không nằm trong phạm vi (128)
Tôi đã phân tích cú pháp tệp xml. Tôi đã đọc ở đây rằng đầu ra bây giờ là unicode. Tôi đang sử dụng các nhà văn csv để viết đầu ra cho một tập tin.
Vì vậy, trong mã của tôi, tôi đã cố gắng mã hóa trong utf-8 trước khi sử dụng tính năng viết. Tại sao tôi vẫn gặp lỗi khi viết bài? Cảnh báo của tôi, "unicode !!!" không bị ném cho đến khi lỗi này xảy ra (tôi đang chạy trên nhiều tệp và nó hoạt động được nhiều nhất). Thực ra, mặc dù, tôi không hiểu tại sao nhà văn lại cố gắng sử dụng ascii, không nên hy vọng là utf-8? Tôi đã thay thế utf-8 bằng ascii trong chức năng mã hóa chỉ để đá. Cùng một kết quả. Hãy giúp tôi!!!
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)
"Tôi đã phân tích cú pháp một tệp xml. Tôi đã đọc ở đây rằng đầu ra bây giờ là unicode". Hiển thị cách bạn phân tích cú pháp XML. –