簡體   English   中英

Unicode解析錯誤

[英]Unicode parsing error

from urllib.request import urlopen
html = urlopen("http://www.google.com/").read().decode('utf-8').replace("preview","")
from html.parser import HTMLParser
class MyHTMLParser(HTMLParser):
    def handle_data(self, data):
        if any(c.isalpha() for c in data):
            print(data)
MyHTMLParser().feed(html)
input()

因此,我正在嘗試制作一個程序,該程序可以查看網站並保存數據,然后顯示HTML的主要數據。 這將與google完美配合,並且在IDLE中也完美配合,但是其他在\★使用Unicode字符\★ (黑星)或 (版權)的其他網站都將產生錯誤。 此錯誤將立即關閉cmd窗口。 追溯為:

“ UnicodeEncodeError:'charmap'編解碼器無法在位置8編碼字符'\\ u2122':字符映射到(未定義)”

圖片

我可能在網站上為它們中的大多數設置很多。(替換),但是我敢肯定有一種簡單的方法可以將其轉換為可以讀取的內容,或僅用“”代替。

看完之后: UnicodeEncodeError:'charmap'編解碼器無法編碼-字符映射到<undefined>,打印功能

按照建議2,解決方案似乎涉及導入sys並使用sys.stdout.encoding和errors='ignore'對字符串進行編碼

html = urlopen("http://www.google.com/").read().encode(sys.stdout.encoding, errors='replace').decode('utf-8')`

您可能需要再次解碼...我不確定,因為我尚未在計算機上設置此問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM