Python读取XML文档正确应用方式解读


对于刚刚接触Python的初学者来说,他们在学习的过程中会逐渐的发现这一编程语言实际上一款功能强大应用简单的计算机程序语言。我们今天将会为大家详细介绍一下有关Python读取XML文档的相关应用方式。

最近做一个小功能,里边包含Python读取XML文档的功能,封装了一个读取类,包括读取xml中所有数据,返回list集合;根据唯一节点值读取该节点及子节点的值

  1. from xml.dom.minidom import parse,parseString  
  2. class XmlConfig:   
  3. def __init__(self,path):   
  4. selfself.xmlData=self.GetXml(path)  
  5. def GetText(self,nodelist):  
  6. r="" 
  7. for nxd in nd.childNodes:   
  8. rr=r+nxd.nodeValue  
  9. return r  
  10. ##获取xml所有数据  
  11. def GetXml(self,path):  
  12. doc1=parse(path)  
  13. st=doc1.firstChild  
  14. websitesst.childNodes  
  15. lstList=[]  
  16. for sw in websites:   
  17. if sw.nodeType==sw.ELEMENT_NODE :   
  18. lsty=[]  
  19. for nd in sw.childNodes:   
  20. if nd.nodeType==nd.ELEMENT_NODE:  
  21. ndndName= nd.nodeName  
  22. ndndValue= nd.firstChild.data  
  23. b=(ndName,ndValue)  
  24. lsty.append(b)   
  25. lstList.append(lsty)  
  26. return lstList  
  27. ##获取单个节点及子节点值   
  28. def GetSingle(self,siteName):  
  29. for item in self.xmlData:  
  30. for k,v in item:  
  31. if v==siteName:   
  32. return item  
  33. ##获取单个节点及子节点值   
  34. def GetSingleDict(self,siteName):  
  35. lst=self.GetSingle(siteName)  
  36. dic1={}  
  37. if len(lst)>0:  
  38. for item in lst:   
  39. dic1[item[0]]=item[1]  
  40. return dic1 

xml文档

  1. < ?xml version="1.0" encoding="UTF-8"?> 
  2. < Site> 
  3. < WebSites> 
  4. < website>http://www.xxx.net< /website> 
  5. < loginurl>http:///www.xxx.net/login.php< /loginurl> 
  6. < username>uname=xxx< /username> 
  7. < passwd>pass=123456< /passwd> 
  8. < other>< ![CDATA[r=5&remember=0&ur=xxx]]>< /other> 
  9. < config>WebSite.ini< /config> 
  10. < configname>XXX< /configname> 
  11. < /WebSites> 
  12. < WebSites> 
  13. < website>http://www.xxx.com< /website> 
  14. < loginurl>http:///www.xxx.com/login.php< /loginurl> 
  15. < username>uname=xxx< /username> 
  16. < passwd>pass=123456< /passwd> 
  17. < other>< ![CDATA[r=5&remember=0&ur=xxx]]>< /other> 
  18. < config>WebSite.ini< /config> 
  19. < configname>XXX< /configname> 
  20. < /WebSites> 
  21. < /Site> 

Python读取XML文档的调用:

  1. if __name__=="__main__":  
  2. f=XmlConfig()  
  3. print f.xmlData 

以上就是对Python读取XML文档的相关介绍。

相关内容

    暂无相关文章

评论关闭