[英]Parsing UTF-8 XML-Files with Python
我有一個XML文件,其中包含一些德國變音符號。 我的目標是讀取文件並將結果存儲到數據庫中。 為了測試,我得到了兩個不同的文件。 第一個是根據chardet UTF-8-SIG ,另一個是UTF-8 。
使用lxml讀取文件后,通過unicode(field[0])
對數據進行預處理
解析第一個文件可以正常工作,但處理其他文件則會導致編碼錯誤:UnicodeEncodeError:'ascii'編解碼器無法在位置編碼字符:序數不在范圍內(128)
例如,這樣的字符串可以是u'Zubeh \\ xf6r'( print(field[0]
)。
使用print (field[0].encode("utf-8"))
得到正確的字符串,但是類型是str
而不是unicode
嘗試
from lxml import etree
parser=etree.HTMLParser(encoding='utf-8')
當您使用lxml讀取數據時。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.