簡體   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