python解析xml文件

2021-02-06 16:16

阅读:610

标签:通过   list   XML   ldo   解析xml   sch   port   about   stars   

  1. 加载和读取xml文件

    import xml.dom.minidom
    doc = xml.dom.minidom.parse(xmlfile)
    
  2. 获取xml文档对象(对子节点和节点node都适用)

    root = doc.documentElement
    
  3. 节点属性

    root.nodeName  # 每个节点都有它的 nodeName,nodeValue, nodeType属性;
    root.nodeValue  # nodeValue 是节点的值,只对本文本节点有效;
    文本节点:
    Element节点下面没有别的节点,只有文本的话
    txt_node = Element节点.firstChild
    txt_node.data 或者 txt_node.nodeValue都是可以获取文本
    root.nodeType  # 节点类型;
    root.ELEMENT_NODE
    
  4. 属性值的获取、修改、删除

    root.getAttribute(attributeName)  # 获取 xml 节点属性值;
    root.setAttribute(attributeName, value)  # 修改或添加 xml 节点属性值;
    root.getElementsByTagName(TagName)  # 根据标签获取 xml 节点对象集合
    root.removeAttribute(attributeName)  # 删除 xml 节点属性值;
    
  5. 子节点的访问

    root.childNodes  # 获取子节点列表;
    root.childNodes[index].nodeValue  # 获取 xml 节点值;
    c # 访问第一个节点(相当于 root.childNodes[0]);
    root.childNodes[0].data  # 获得文本值;
    
  6. 删除和生成节点

    # 删除 node 节点下面的子节点 childnode_in_node
    node.removeChild(childnode_in_node) 
    # 生成节点  # 文本节点.createTextNode(‘xxxxx‘)
    node.createElement(‘activity‘)  
    
  7. pass

通过xml.dom.minidom解析xml文件

"""
    War, ThrillerDVD2003PG10Talk about a US-Japan warAnime, Science FictionDVD1989R8A schientific fictionAnime, ActionDVD4PG10Vash the Stampede!ComedyVHSPG2Viewable boredom

"""

# 通过minidom解析xml文件
import xml.dom.minidom as xmldom

# get file object
doc = xmldom.parse(r‘movie.xml‘)  # 
# get element object
root = doc.documentElement  # 
node1 = root.getElementsByTagName("movie")  # 
# get tab attribute
print(node1[0].getAttribute("title"))  # Enemy Behind

movie = root.getElementsByTagName("movie")
print(movie[0].nodeName)  # movie
print(movie[0].nodeType)  # 1
print(movie[0].nodeValue)  # None
print(movie[0].lastChild)  # 

year_list = root.getElementsByTagName("year")
print(year_list[0].firstChild.data)  # 2003
print(year_list[0].nodeValue)  # None
for i in range(len(year_list)):
    print(year_list[i].lastChild)

# 
# 
# 
# 

print(year_list[0].firstChild.nodeValue)  # 2003      
name age
shanpao S12

python解析xml文件

标签:通过   list   XML   ldo   解析xml   sch   port   about   stars   

原文地址:https://www.cnblogs.com/he-qing-qing/p/12781849.html


评论


亲,登录后才可以留言!