微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用Python编写XML文件

如何解决用Python编写XML文件

| 我创建了一个具有以下内容的XML文档。
<books>
  <book id=\"1\">
    <title>Title01</title>
    <authors/>
    <pages>
      <page>Page01</page>
      <page>Page02</page>
      <page>Page03</page>
      <page>Page04</page>
      <page>Page05</page>
    </pages>
  </book>
  <book id=\"2\">
    <title>Title02</title>
    <authors/>
    <pages>
      <page>Page01</page>
      <page>Page02</page>
      <page>Page03</page>
      <page>Page04</page>
      <page>Page05</page>
    </pages>
  </book>
</books>
然后,我使用Python脚本将各个书籍拆分并写入单独的文件中;但是,生成文件不是XML文件,因为它们没有XML声明。有没有一种在Python中创建XML文件方法? 这样做的目的是确保每个文件都具有XML声明,如下所示。
 <?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?>
  <book id=\"1\">
    <title>Title01</title>
    <authors/>
    <pages>
      <page>Page01</page>
      <page>Page02</page>
      <page>Page03</page>
      <page>Page04</page>
      <page>Page05</page>
    </pages>
  </book>
    

解决方法

为什么在写书条目之前不将xml声明写到每个书文件?     ,使用
UTF-8
编码文件,而不是像
ISO-8859-1
这样的旧编码。然后,您不需要XML声明。     ,您应该查看
xml.etree.ElementTree
模块。该链接适用于Python 3,但在此之前已经包含了。我在Python 2.5中使用了它,所以您应该没问题。 另外,我用
xml.dom.minidom
也取得了不错的成绩。构建
Document
之后(通过向
createElement(\'ELEM_NAME\')
添加元素,只需将其写入带有
mydoc.toprettyxml()
的流中即可)。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。