Tôi có một dict là nguồn cấp dữ liệu có phản hồi url. Giống như:UnicodeEncodeError: codec 'ascii' không thể mã hóa các ký tự
>>> d
{
0: {'data': u'<p>found "\u62c9\u67cf \u591a\u516c \u56ed"</p>'}
1: {'data': u'<p>some other data</p>'}
...
}
Trong khi sử dụng xml.etree.ElementTree
chức năng trên các giá trị dữ liệu này (d[0]['data']
) Tôi nhận được thông báo lỗi nổi tiếng nhất:
UnicodeEncodeError: 'ascii' codec can't encode characters...
Tôi nên làm gì để chuỗi Unicode này để làm cho nó phù hợp cho Trình phân tích cú pháp ElementTree?
PS. Vui lòng không gửi cho tôi các liên kết có giải thích bằng Python & Python. Tôi đã đọc nó tất cả đã không may, và không thể sử dụng nó, như hy vọng những người khác có thể.
Vâng, đó là điều đầu tiên tôi đã cố gắng và tôi luôn cố gắng. Vấn đề là với 'ElementTree.tostring'. Bạn có thể thử 'ElementTree.tostring (p, method = 'text')' và nói tại sao nó không hoạt động? Cảm ơn – theta
Ah, xin lỗi. Nó quá rõ ràng. '.tostring()' có đối số tùy chọn 'encoding' có thể được đặt thành ascii theo mặc định, vì vậy việc thêm 'encoding = 'utf-8'' hoạt động. Chúc mừng – theta
@theta: Hehe, sắp kể cho bạn nghe về điều đó. :-) –