Python 标准库 —— xml

什么是 xml?

xml:eXtensible Markup Language,即可扩展标记语言,它可以用来标记数据/定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。

// abc.xml

结构上来说,它很像常见的 HTML 超文本标记语言。但 HTML 和 XML 被设计的目的是不同的,

  • (1)超文本标记语言(HTML)

    被设计用来显示数据,其焦点在数据的外观,比如一级标题长什么样;

  • (2)可扩展标记语言(XML)

    被设计用来传输和存储数据,其焦点是数据的内容

基本概念

  • 标签对<aa></aa>
  • 标签属性(getAttribute):<aa id='123'></aa>
  • 标签对嵌入数据:<aa>abc</aa>
  • 标签对嵌入子标签(具有层级结构关系):

    <aa>
        <bb></bb>
    </aa>

获得标签属性

from xml.dom.minidom import parse
# 打开 xml 文档,dom:document object model,文档对象模型
dom = parse('abc.xml')
root = dom.documentElement
print root.nodeName
print root.nodeValue

获得子标签

login = root->getElementsByTagName('login')
                    # elements,得到的是一组 login 元素
item = login[0]
print item.getAttribute('username')
print item.getAttribute('passwd')

获得标签对之间的数据

caption = root->getElementsByTagName('caption')
caption[0].firstChild.data
                # caption[0].firstChild.nodeValue 也可以取得标签对之间的数据
caption[1].firstChild.data
caption[2].firstChild.data

References

[1] python 读取xml 文件

你可能感兴趣的:(Python 标准库 —— xml)