Chinaunix首页 | 论坛 | 博客
  • 博客访问: 302851
  • 博文数量: 32
  • 博客积分: 2179
  • 博客等级: 大尉
  • 技术积分: 443
  • 用 户 组: 普通用户
  • 注册时间: 2007-03-21 10:30
文章分类

全部博文(32)

文章存档

2014年(1)

2013年(4)

2011年(4)

2009年(11)

2008年(5)

2007年(7)

我的朋友

分类: Python/Ruby

2011-04-13 11:06:13

    工作中同事涉及到用python修改xml文件,网上看了下相关的文章和例子,方法其实挺多的,用了比较简单的方法实现在指定节点中插入和删除相关元素和属性,代码如下:


# -*- coding:UTF-8 -*-

import xml.etree.ElementTree as ET

def add_node():
    x = 0
    for i in devE:
        if i.tag != "serial":
            x += 1
            continue
        else:
            break
    ifE = ET.Element('interface')
    ifE.set('type', 'bridge')
    macE = ET.SubElement(ifE, 'mac')
    macE.set("address", "54:52:00:22:93:88")
    brE = ET.SubElement(ifE, 'source')
    brE.set("bridge", "br1")
    devE.insert(x, ifE)

def del_node():
    for i in devE.findall("interface"):
        if i.find("mac").get("address") == "54:52:00:22:93:88":
            del devE[devE.getchildren().index(i)]

if __name__ == "__main__":
    tree = ET.parse("test1.xml")
    root = tree.getroot()
    devE = root.find('devices')
    add_node()
    #del_node()
    tree.write('test1.xml')


阅读(7336) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~