使用xml.dom.minidom python向xml添加属性和值

时间:2012-09-17 15:24:31

标签: python

如何使用xml.dom.minidom python向xml添加attribut和value。

我的xml如下

<?xml version="1.0" encoding="utf-8"?>

<PackageInfo xmlns="http://someurlpackage">


<data ID="http://someurldata1">data1</data >
<data ID="http://someurldata2">data2</data >
<data ID="http://someurldata3">data3</data >
</PackageInfo>

我想添加一个新的'data'标签,它的id为'http:// someurldata4',值为data4。因此得到的xml将如下所示。我不想使用xml.etree .ElementTree

<?xml version="1.0" encoding="utf-8"?>

<PackageInfo xmlns="http://someurlpackage">
<data ID="http://someurldata1">data1</data >
<data ID="http://someurldata2">data2</data >
<data ID="http://someurldata3">data3</data >
<data ID="http://someurldata4">data4</data >
</PackageInfo>

由于

1 个答案:

答案 0 :(得分:1)

您使用Document.createElement() method创建新的DOM元素,可以使用Element.setAttribute() method添加新的DOM属性:

newdata = doc.createElement(u'data')
newdata.setAttribute(u'ID', u'http://someurldata4')

然后,您必须使用Document.createTextNode()Node.appendChild()方法创建文本节点并将其作为子项添加到newdata元素:

newdata.appendChild(doc.createTextNode(u'data4'))

现在您可以将新元素添加到文档根目录:

doc.documentElement.appendChild(newdata)

换句话说,请使用Python implementation of the DOM API