Minidom在远程服务器上解析XML文件时遇到一些问题。
这是我要解析的代码:
<mod n="1">
<body>
Random Body information will be here
</body>
<b>1997-01-27</b>
<d>1460321480</d>
<l>United Kingdom</l>
<s>M</s>
<t>About Denisstoff</t>
</mod>
我正在尝试使用Minidom返回<d>
值。这是我试图用来查找值的代码:
expired = True
f = urlreq.urlopen("http://st.chatango.com/profileimg/"+args[:1]+"/"+args[1:2]+"/"+args+"/mod1.xml")
data = f.read().decode("utf-8")
dom = minidom.parseString(data)
itemlist = dom.getElementsByTagName('d')
print(itemlist)
它返回值,但我按照一种方式读取我在这里找到的数据(下图),它只是崩溃了我的python应用程序。这是我试图解决的代码:
for s in itemlist:
if s.hasAttribute('d'):
print(s.attributes['d'].value)
这是崩溃:
AttributeError: 'NodeList' object has no attribute 'value'
我也尝试过ElementTree,但根本没有返回任何数据。我已经测试了URL,它对我想要的数据是正确的,但我无法让它读取标签中的数据。任何和所有的帮助表示赞赏。
答案 0 :(得分:0)
如果你想从这个xml打印值,你应该使用它:
for s in itemlist:
if hasattr(s.childNodes[0], "data"):
print(s.childNodes[0].data)
我希望它有所帮助:D