nainai1 发表于 2018-8-13 07:36:34

python xml解析之ElementTree 基本读操作示例

#-*- coding:utf-8 -*-  
from xml.etree import ElementTree
  
def print_node(node):
  
    '''打印结点基本信息'''
  
    print "=============================================="
  
    print "node.attrib:%s" % node.attrib
  
    if node.attrib.has_key("age") > 0 :
  
      print "node.attrib['age']:%s" % node.attrib['age']
  
    print "node.tag:%s" % node.tag
  
    print "node.text:%s" % node.text
  
def read_xml(text):
  
    '''读xml文件'''
  
    # 加载XML文件(2种方法,一是加载指定字符串,二是加载指定文件)
  
    root = ElementTree.fromstring(text)
  

  
    # 获取element的方法
  
    # 1 通过getiterator
  
    lst_node = root.getiterator("person")
  
    for node in lst_node:
  
      print_node(node)
  

  
    # 2通过 getchildren
  
    lst_node_child = lst_node.getchildren()
  
    print_node(lst_node_child)
  

  
    # 3 .find方法
  
    node_find = root.find('person')
  
    print_node(node_find)
  

  
    #4. findall方法
  
    node_findall = root.findall("person/name")
  
    print_node(node_findall)
  

  
if __name__ == '__main__':
  
    read_xml(open("test.xml").read())
  
    #write_xml(open("test.xml").read())
页: [1]
查看完整版本: python xml解析之ElementTree 基本读操作示例