我爱编程

2018-02-10 记录python中的xml操作

2018-02-10  本文已影响0人  wowshiwoniu

xml使用<xml.etree.ElementTree>操作数据

    try:
        import xml.etree.cElementTree as ET
    except ImportError:
        import xml.etree.ElementTree as ET
content = '''<?xml version="1.0" encoding="GBK"?>
<request>
    <head>
        <name>测试</name>
        <age>22</age>
        <sex></sex>
    </head>
    <body>
        <happy>哈哈</happy>
        <time>666</time>
    </body>
</request>'''
content = content.replace('GBK', 'utf-8').replace('gbk', 'utf-8')
tree = ET.fromstring(content)
    print tree  # 打印root节点元素
    print tree.find('body')  #  打印<request>下的body节点
    name = tree[0].find('name')  #  获取head节点下的name节点
    name.text = 'This is a test'  # 修改name节点的名字
    print tree[1]   # 打印<request>下的第二个节点,也就是body节点
    tree.remove(tree[0])  #  移除request下标的第一个节点,即head
    print tree.tag  
    print tree[0].tag
    print tree[0].text
    e = ET.Element('spam')
    e.text = 'This is a test'
    tree.insert(1, e)  # 此处新增元素加在哪里,只需要将tree替换成需要添加的元素节点
print ET.tostring(tree)   # tree是打印的全部xml字符串,换成对应的节点,可以打印当前节点下的数据。PS:此处不带xml头部,最后需要手动添加
上一篇 下一篇

猜你喜欢

热点阅读