zoukankan      html  css  js  c++  java
  • python xml练习:从database.xml文件取databaselist的ip、name、passwd,写入列表

    xml:

    <?xml version='1.1' encoding='utf-8'?>
    <!--this is a test about xml-->
    <databaselist type='oracle'>
        <database userArea='suzhou'>
            <ip>10.192.128.88</ip>
            <name>'xiasam'</name>
            <passwd>!QAZ2wsx</passwd>
        </database>
        <database userArea='BeiJing'>
            <ip>10.192.128.89</ip>
            <name>'wu li'</name>
            <passwd>3edc$RFV</passwd>
        </database>
    </databaselist>

    #coding=utf-8

    def getInfo(xml_file):
        from xml.dom.minidom import parse
        DOMTree=parse(xml_file)
        databaselist=DOMTree.documentElement
        #print databaselist
        result=[]
        databaselists=databaselist.getElementsByTagName('database')
        for i in databaselists:#
            for j in i.childNodes[1:6:2]:
                print j.tagName,j.childNodes[0].data
                result.append("%s : %s"%(j.tagName,j.childNodes[0].data))
        return result


    print getInfo(r"d:\database_test.xml")

    c:Python27Scripts>python task_test.py
    ip 10.192.128.88
    name 'xiasam'
    passwd !QAZ2wsx
    ip 10.192.128.89
    name 'wu li'
    passwd 3edc$RFV
    [u'ip : 10.192.128.88', u"name : 'xiasam'", u'passwd : !QAZ2wsx', u'ip : 10.192.128.89', u"name : 'wu li'", u'passwd : 3edc$RFV']

    下边是调试代码(注释)

    #coding=utf-8

    def getInfo(xml_file):
        from xml.dom.minidom import parse
        DOMTree=parse(xml_file)
        databaselist=DOMTree.documentElement
        #print databaselist
        result=[]
        databaselists=databaselist.getElementsByTagName('database')
        for i in databaselists:
            print "i:",i
            for j in i.childNodes[1:6:2]:
                print "j:",j
                print "j.tagName:",j.tagName,"j.childNodes[0].data:",j.childNodes[0].data
                result.append("%s : %s"%(j.tagName,j.childNodes[0].data))
        return result

    print getInfo(r"d:\database_test.xml")

    c:Python27Scripts>python task_test.py
    i: <DOM Element: database at 0x2a06648>
    j: <DOM Element: ip at 0x2a06760>
    j.tagName: ip j.childNodes[0].data: 10.192.128.88
    j: <DOM Element: name at 0x2a06800>
    j.tagName: name j.childNodes[0].data: 'xiasam'
    j: <DOM Element: passwd at 0x2a068a0>
    j.tagName: passwd j.childNodes[0].data: !QAZ2wsx
    i: <DOM Element: database at 0x2a06968>
    j: <DOM Element: ip at 0x2a06a80>
    j.tagName: ip j.childNodes[0].data: 10.192.128.89
    j: <DOM Element: name at 0x2a06b20>
    j.tagName: name j.childNodes[0].data: 'wu li'
    j: <DOM Element: passwd at 0x2a06bc0>
    j.tagName: passwd j.childNodes[0].data: 3edc$RFV
    [u'ip : 10.192.128.88', u"name : 'xiasam'", u'passwd : !QAZ2wsx', u'ip : 10.192.128.89', u"name : 'wu li'", u'passwd : 3edc$RFV']

  • 相关阅读:
    为linux命令添加别名
    ubuntu安装mongodb
    mysql保存中文乱码问题
    公倍数
    复制网站内容
    孪生素数
    迷宫问题
    递归连续数
    排列平方数
    基因牛
  • 原文地址:https://www.cnblogs.com/xiaxiaoxu/p/8822056.html
Copyright © 2011-2022 走看看