繁体   English   中英

UnicodeEncodeError:'ascii'编解码器无法编码位置17710中的字符u'\ xe7':序数不在范围内(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.

相关问题 UnicodeEncodeError: 'ascii' codec can't encode character u'\\xe9' in position 54: ordinal not in range(128) Python eyed3 UnicodeEncodeError:'ascii'编解码器无法在位置17编码字符u'\\ xe9':序数不在范围内(128) UnicodeEncodeError:'ascii'编解码器无法对位置448中的字符u'\\ u2013'进行编码:序数不在范围内(128) UnicodeEncodeError:'ascii'编解码器无法在位置32编码字符u'\\ u2019':序数不在范围内(128) UnicodeEncodeError: 'ascii' codec can't encode character u'\–' in position 3 2: ordinal not in range(128) UnicodeEncodeError:'ascii'编解码器无法对位置34中的字符u'\\ u05a0'进行编码:序数不在范围内(128) UnicodeEncodeError:'ascii'编解码器无法对位置47中的字符u'\\ u2019'进行编码:序数不在范围内(128) UnicodeEncodeError: 'ascii' codec can't encode character u'\ц' in position 32: ordinal not in range(128) UnicodeEncodeError:'ascii'编解码器无法在位置30339编码字符u'\\ u2019':序数不在范围内(128) UnicodeEncodeError: 'ascii' 编解码器无法对位置 0 中的字符 u'\ا' 进行编码:序号不在范围内 (128)
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM