rss· 投稿· 设为首页· 加入收藏· 繁體版
当前位置: 火魔网 » 程序开发 » Python

Python读取xml文档(搜索法)

《Dive into python》

搜索法读取xml文档。对于大型的xml文档,如果还用遍历法就会非常的复杂,此时搜索法显得简单许多。使用方法:getElementsByTagName

Example:Config.xml

<?xml version="1.0"?>

<config>

<server id="server1"><account>account</account><pwd>pwd</pwd></server>

<server id="server2"><account>account</account><pwd>pwd</pwd></server>

</config>

Python操作

>>> xmldoc = minidom.parse('C:\\Python25\\code\\XML\\config.xml')

>>> serverlist = xmldoc.getElementsByTagName_r('server')

>>> serverlist

[<DOM Element: server at 0x122afd0>, <DOM Element: server at 0x 122c1c0>]

>>> serverlist[0].toxml()

u'<server id="server1"><account>account</account><pwd>pwd</pwd></server>'

>>> print serverlist[0].toxml()

<server id="server1"><account>account</account><pwd>pwd</pwd></server>

>>> print serverlist[1].toxml()

<server id="server2"><account>account</account><pwd>pwd</pwd></server>

>>> server1 = serverlist[0]

>>> server1

<DOM Element: server at 0x122afd0>

>>> account1 = server1.getElementsByTagName_r('account')

>>> account1

[<DOM Element: account at 0x122c0a8>]

>>> account1[0].toxml()

u'<account>account</account>'

>>> server1.attributes

<xml.dom.minidom.NamedNodeMap object at 0x011C63C0>

>>> server1.attributes.keys()

[u'id']

>>> server1.attributes.values()

[<xml.dom.minidom.Attr instance at 0x0122C030>]

>>> server1.attributes["id"]

<xml.dom.minidom.Attr instance at 0x0122C030>

顶一下
(0)
踩一下
(0)