Python - 删除元素中的xml标记

时间:2011-07-13 14:20:58

标签: python xml

我正在使用python 2.7.2。和dom解析器读取几个xml文件上的数据。并导出.db文件以在sql server上使用。我已经学会了如何导出文件,但XML标签也包含在我的数据表中。这是基本代码:

from xml.dom import minidom
import sqlite3
xmldoc = minidom.parse('c:\dd\l2con\l2connection.xml')
coId = xmldoc.getElementsByTagName('id')

并且每个元素都是这样的:

>>> coId[0]
<DOM Element: id at 0x249cf30>
>>> print coId[0].toxml()
<id>45859</id>
>>> coId[1]
<DOM Element: id at 0x24ac328>
>>> print coId[1].toxml()
<id>46889</id>
>>> 

它们应该如下所示:没有xml标签

>coId[0].toxml()
45859
>coId[1].toxml()
46889

从xml中删除标签可能不适用于这种情况。这样python无法读取xml文件。有什么方法可以就这个问题向我提出建议。任何帮助都将不胜感激。

谢谢

优素福

3 个答案:

答案 0 :(得分:3)

coId[0]是一个带有一个子节点(Text节点)的DOM元素。使用

coId[0].firstChild.data

获取文字内容。

这也有效:

coId[0].firstChild.nodeValue

答案 1 :(得分:2)

使用coId[0].data代替,这会给出元素内容。

请参阅mzjn answer,coId [0] .firstChild.data是正确的方法。

答案 2 :(得分:0)

您可以使用/尝试nodeValue属性

我们假设你有:

myNode.toXml()= <name>Ben</name>

然后

myNode.nodeValue = Ben