1

我正在尝试使用 minidom 在 Python 中解析 SAP 结果 xml 文件(在 soapUI 中生成),一切顺利,直到检索值。

无论它是什么类型的节点,打印的值都是None或只是空字符串。节点有不同的类型,到目前为止我能得到的唯一值是元素节点的标签名称。当谈到它的价值时,我得到了None。对于文本一,我得到#textfor nodeName,但3nodeType空字符串nodeValue

它出什么问题了?

代码是:

from xml.dom.minidom import parse, Node

def parseData():

   try:
      data = parse('data.xml')
   except (IOError):
      print 'No \'data.xml\' file found. Move or rename the file.'

   Milestones = data.getElementsByTagName('IT_MILESTONES')

   for node in Milestones:
      item_list = node.getElementsByTagName('item')
      print(item_list[0].childNodes[1].nodeName)
      print(item_list[0].childNodes[1].nodeType)
      print(item_list[0].childNodes[1].nodeValue)

而 XML 结构的重要部分如下所示:

<IT_MILESTONES>
      <item>
         <AUFNR>000070087734</AUFNR>
         <INDEX_SEQUENCE>2300</INDEX_SEQUENCE>
         <MLSTN>1</MLSTN>
         <TEDAT>2012-08-01</TEDAT>
         <TETIM>09:12:38</TETIM>
         <LST_ACTDT>2012-08-01</LST_ACTDT>
         <MOBILE>X</MOBILE>
         <ONLY_SL/>
         <VORNR>1292</VORNR>
         <EINSA/>
         <EINSE/>
         <NOT_FOR_NEXT_MS>X</NOT_FOR_NEXT_MS>
      </item>
</IT_MILESTONES>
4

1 回答 1

1

你应该看看item_list[0].childNodes[1].childNodes. 这些可能包含您正在寻找的内容。例如:

item_list[0].childNodes[11].childNodes[0].nodeValue

是日期

u'2012-08-01'

类型的节点1没有nodeValuebut childNodes。类型的节点3(文本节点)有一个nodeValue.

于 2013-09-18T10:09:54.973 回答