[英]UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 54: ordinal not in range(128)
[英]UnicodeEncodeError: 'ascii' codec can't encode character u'\xe7' in position 17710: ordinal not in range(128)
我正在尝试从存档的Web爬网中打印字符串,但是当我这样做时,我收到此错误:
print page['html']
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe7' in position 17710: ordinal not in range(128)
当我尝试打印unicode(page['html'])
我得到:
print unicode(page['html'],errors='ignore')
TypeError: decoding Unicode is not supported
知道如何正确编码这个字符串,或至少让它打印? 谢谢。
您需要对保存的unicode进行编码以显示它,而不是对其进行解码 - unicode是未编码的形式。 您应始终指定编码,以便您的代码可移植。 “通常”的选择是utf-8
:
print page['html'].encode('utf-8')
如果您没有指定编码,它是否有效将取决于您print
- 您的编辑器,操作系统,终端程序等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.