python解析xml,由於某些協會規定的原因,只能解析utf8和utf16的格式,而gbk和gb2312等解析的時候都會報錯,但是對於某些匯出的xml格式文件,很多都是gbk編碼的,那麼提供一種處理方式
先將xml解析成utf8格式,然後替代第一行的encoding格式,然後儲存乙個新檔案,提供後續解析,在解析完之後將這個新檔案刪除
#coding:utf-8
import codecs
f = codecs.open(file_name, 'rb','gbk')
text = f.read().encode('utf-8')
text = text.replace('<?xml version="1.0" encoding="gbk"?>','<?xml version="1.0" encoding="utf-8"?>')
f.close()
tempfilename = file_name.split('.xml')[0]+'temp.xml'
f = open(tempfilename, 'wb')
f.write(text)
f.close()
dom = minidom.parse(tempfilename)
os.remove(tempfilename)
附: 解析這種文字node中的內容方法:
for listofmodel in dom.getelemefrom xml.dom import minidom
dom = minidom.parse(tempfilename)
for listofmodel in dom.getelementsbytagname("listofmodel"):
self.__date = listofmodel.getattribute('starttime')
VB中的GBK編碼
option explicit function formatnametomac val as string as string dim i as integer dim str as string str for i 1 to len val if clng h hex asc mid val,i...
簡介python2 x的編碼
python2.x的中文編碼真是令人頭痛,簡單寫下自己的一點python編碼轉換的體會。windows平台用的預設編碼格式為gbk s raw input 在windows平台下 s 的字元編碼就是gbk,若要轉換為utf 8,則必須借助python內建物件unicode作為中介 u s.encod...
Python3 x編碼問題
1.記事本的ansi編碼為系統本地編碼,我的是gbk open 函式的encoding引數預設是本地編碼,也就是gbk,所以直接讀取ansi編碼的記事本檔案是木有問題的。怎麼檢視系統本地編碼?在cmd下輸入 chcp 從下表可以看出,936對應gbk編碼 下表列出了所有支援的 頁及其國家 地區 或者...