我是相當新的Python和我只是試圖解析一個簡單的Web的API,它返回以下XML語法的結果:Python的minidom命名element.data只返回對象,而不是文本
<rss version='2.0'>
<channel>
<title>www.onlinetvrecorder.com</title>
<description>OTR Torrents</description>
<link>http://www.onlinetvrecorder.com/</link>
<copyright>OTR</copyright>
<STATIONS>
<ITEM>
<TITLE>3SAT</TITLE>
<COUNTRY>DE</COUNTRY>
<LANGUAGE>DE</LANGUAGE>
</ITEM>
<ITEM>
<TITLE>ANIXE</TITLE>
<COUNTRY>DE</COUNTRY>
<LANGUAGE>DE</LANGUAGE>
</ITEM>
<ITEM>
<TITLE>ARD</TITLE>
<COUNTRY>DE</COUNTRY>
<LANGUAGE>DE</LANGUAGE>
</ITEM>
</STATIONS>
</channel>
</rss>
我解析器看起來像這樣:
import xml.dom.minidom as dom
def parseStations(stationsResult):
document = dom.parse(stationsResult)
stations = []
#get all ITEM elements and get their child TITLE
items = document.getElementsByTagName("ITEM")
for item in items:
stationTitleNodeValue = item.getElementsByTagName("TITLE")[0].firstChild.data
stations.append(stationTitleNodeValue);
return stations
我的意圖是在XML中獲取TITLE Elements的文本值。但是當打印返回列表的內容到控制檯時,它看起來像這樣:
<DOM Element: TITLE at 0x368e8c0>
我在做什麼錯了?你能幫助我嗎? 謝謝您(非常感謝!)提前,
基督教
調用你的功能與您的數據回報`[u'3SAT',u'ANIXE「 u'ARD」]`在Python 2.7我。不知道你爲什麼會不同。 – 2011-12-16 00:16:09