【发布时间】:2014-11-26 11:41:12
【问题描述】:
抱歉,我的 Python 知识完全不存在。我需要从一些 XML 中提取日期,其格式类似于:
<Header>
<Version>1.0</Version>
....
<cd:Data>...</Data>
.....
<cd:DateReceived>20070620171524</cd:DateReceived>
环顾四周,我发现了类似的东西
#!/usr/bin/python
from xml.dom.minidom import parse
import xml.dom.minidom
# Open XML document using minidom parser
DOMTree = xml.dom.minidom.parse("date.xml")
collection = DOMTree.documentElement
print collection.getElementsByTagName("cd:DateReceived").item(0)
但是这只会打印十六进制值:
<DOM Element: cd:DateReceived at 0x1529e0>
如何获取日期 20070620171524?
我试过用下面的
#!/usr/bin/python
from xml.dom.minidom import parse
import xml.dom.minidom
# Open XML document using minidom parser
DOMTree = xml.dom.minidom.parse("date.xml")
collection = DOMTree.documentElement
date = cd:DateReceived[0].firstChild.nodeValue
print date
但它给出了一个错误,因为它不喜欢标签的“cd”部分
date = cd:DateReceived[0].firstChild.nodeValue
^
SyntaxError: invalid syntax
任何帮助将不胜感激。谢谢!
【问题讨论】:
-
那个十六进制值是指向 DOM 元素对象的指针的地址。如果你对它执行
.data,它应该返回值。
标签: python xml date extraction