標籤:它的 nbsp nodetype 處理 pass type element type屬性 utf-8
首先,獲得標籤資訊abc.xml
<?xml version="1.0" encoding="utf-8"?><catalog> <maxid>4</maxid> <login username="pytest" password="123456"> <caption>Python</caption> <item id="4"> <caption>Testing</caption> </item> </login> <item id="2"> <caption>Zope</caption> </item></catalog>
python擷取catalog標籤的資訊
# -*- coding:utf-8 -*-import xml.dom.minidom# 開啟xml文檔dom = xml.dom.minidom.parse(‘abc.xml‘)# 得到文件項目對象root = dom.documentElement print root.nodeName print root.nodeValue print root.nodeType print root.ELEMENT_NODE
xml.dom.minidom 模組被用來處理xml檔案
parse():用於開啟一個xml檔案
documentElement:用於得到dom對象的文件項目,並將獲得的對象給root,每一個結點都有它的nodeName,nodeValue,nodeType屬性
nodeName:結點名字
nodeValue:結點值,只對文本結點有效
nodeType:結點類型
二、獲得子標籤:
<maxid>
<login>
import xml.dom.minidomdom = xml.dom.minidom.parse(‘abc.xml‘)root = dom.documentElementbb = root.getElementsByTagName(‘maxid‘)bb = bb[0]print bb.nodeNamebb = root.getElementsByTagName(‘login‘)bb = bb[0]print bb.nodeName
三、區分相同標籤名字的標籤
<caption>
<item>
import xml.dom.minidom# 開啟xml文檔dom = xml.dom.minidom.parse(‘abc.xml‘)# 得到文件項目對象root = dom.documentElementaa = root.getElementsByTagName(‘caption‘)a = aa[2]print a.nodeNameaa = root.getElementsByTagName(‘item‘)a = aa[1]print a.nodeName
root.getElementsByTagName(‘caption‘)獲得的標籤是caption一組標籤
四、獲得標籤的屬性值
username="pytest" password="123456"
id="4"
id="2"
import xml.dom.minidom# 開啟xml文檔dom = xml.dom.minidom.parse(‘abc.xml‘)# 得到文件項目對象root = dom.documentElement# 擷取標籤的屬性值itemlist = root.getElementsByTagName(‘login‘)item = itemlist[0]un = item.getAttribute(‘username‘)print unpd = item.getAttribute(‘password‘)print pdii = root.getElementsByTagName(‘item‘)i1 = ii[0]i = i1.getAttribute(‘id‘)print ii2 = ii[1]i = i2.getAttribute(‘id‘)print i
五、獲得標籤對之間的資料
<caption>Python</caption>
<caption>Testing</caption>
<caption>Zope</caption>
import xml.dom.minidom# 開啟xml文檔dom = xml.dom.minidom.parse(‘abc.xml‘)# 得到文件項目對象root = dom.documentElementcc = dom.getElementsByTagName(‘caption‘)c1 = cc[0]print c1.firstChild.datac2 = cc[1]print c2.firstChild.datac3 = cc[2]print c3.firstChild.data
python 讀取xml檔案