我正在嘗試通過python處理美味的RSS源。這裏有一個例子:通過xml.dom.minidom處理RSS/RDF
...
<item rdf:about="http://weblist.me/">
<title>WebList - The Place To Find The Best List On The Web</title>
<dc:date>2009-12-24T17:46:14Z</dc:date>
<link>http://weblist.me/</link>
...
</item>
<item rdf:about="http://thumboo.com/">
<title>Thumboo! Free Website Thumbnails and PHP Script to Generate Web Screenshots</title>
<dc:date>2006-10-24T18:11:32Z</dc:date>
<link>http://thumboo.com/</link>
...
相關的代碼是:
def getText(nodelist):
rc = ""
for node in nodelist:
if node.nodeType == node.TEXT_NODE:
rc = rc + node.data
return rc
dom = xml.dom.minidom.parse(file)
items = dom.getElementsByTagName("item")
for i in items:
title = i.getElementsByTagName("title")
print getText(title)
我認爲這會打印出每一個標題,而是我得到基本上得到空白輸出。我確信我在做一些愚蠢的錯誤,但不知道是什麼?
你有沒有試過http://feedparser.org/? – badp 2010-03-31 07:58:28
這是一個簡單的RSS源,它與RDF無關。 XML中有一些屬性是從RDF名稱空間導入的,但Feed仍然是RSS源。請更正您問題的標題以反映此問題。 – 2010-03-31 09:00:50
'getElementsByTagName'返回'ELEMENT_NODE'列表,所以每次檢查到'TEXT_NODE'失敗。我沒有測試,但我很確定這一點。 – 2010-03-31 09:10:01