python写xml文件的操作

来源:互联网 发布:音频编辑软件 mac 编辑:程序博客网 时间:2024/04/30 18:59
 python写xml文件的操作

    2012-05-29 13:54:38     我来说两句       
    收藏    我要投稿

    要生成的xml文件格式如下:
    [python]
    <?xml version="1.0" ?>
    <!--Simple xml document__chapter 8-->
    <book>
        <title>
            sample xml thing
        </title>
        <author>
            <name>
                <first>
                    ma
                </first>
                <last>
                    xiaoju
                </last>
            </name>
            <affiliation>
                Springs Widgets, Inc.
            </affiliation>
        </author>
        <chapter number="1">
            <title>
                First
            </title>
            <para>
                I think widgets are greate.You should buy lots of them forom
                <company>
                    Spirngy Widgts, Inc
                </company>
            </para>
        </chapter>
    </book>

    代码:
    [python]
    from xml.dom import minidom, Node
     
    doc = minidom.Document()
     
    doc.appendChild(doc.createComment("Simple xml document__chapter 8"))
     
    #generate the book
    book = doc.createElement('book')
    doc.appendChild(book)
     
    #the title
    title = doc.createElement('title')
    title.appendChild(doc.createTextNode("sample xml thing"))
    book.appendChild(title)
     
    #the author section
    author = doc.createElement("author")
    book.appendChild(author)
    name = doc.createElement('name')
    author.appendChild(name)
    firstname = doc.createElement('first')
    firstname.appendChild(doc.createTextNode("ma"))
    name.appendChild(firstname)
    lastname = doc.createElement('last')
    name.appendChild(lastname)
    lastname.appendChild(doc.createTextNode("xiaoju"))
     
    affiliation = doc.createElement("affiliation")
    affiliation.appendChild(doc.createTextNode("Springs Widgets, Inc."))
    author.appendChild(affiliation)
     
    #The chapter
    chapter = doc.createElement('chapter')
    chapter.setAttribute('number', '1')
    title = doc.createElement('title')
    title.appendChild(doc.createTextNode("First"))
    chapter.appendChild(title)
    book.appendChild(chapter)
     
    para = doc.createElement('para')
    para.appendChild(doc.createTextNode("I think widgets are greate.\
    You should buy lots of them forom"))
    company = doc.createElement('company')
    company.appendChild(doc.createTextNode("Spirngy Widgts, Inc"))
    para.appendChild(company)
    chapter.appendChild(para)
     
     
    print doc.toprettyxml()

    
原创粉丝点击