2016-08-14 41 views
0

可能並不奇怪,但我從來沒有用過xml或PHP,這是我用於即將開展的項目的兩件事。解析奇怪的xml提要

無論如何,我解析XML提要this。每個<item>包含<enclosure url=...>

...使用feedparser =網址&圖像類型等

在Python 3我可以使用

feed = feedparser.parse("http://www.huffingtonpost.com/feeds/verticals/good-news/index.xml") 
l = feed.entries[12]['title']` 

就好了,但是當我試圖讓圖像的URL使用

p = feed.entries[12]['enclosure']

我得到一個錯誤

Traceback (most recent call last): 
    File "<pyshell#28>", line 1, in <module> 
    p = feed.entries[12]['enclosure'] 
    File "C:\Python34\lib\site-packages\feedparser-5.1.3-py3.4.egg\feedparser.py", line 375, in __getitem__ 
    return dict.__getitem__(self, key) 
KeyError: 'enclosure' 

所以很明顯enclosure不回來了任何事情,我懷疑這是因爲在XML中不使用

<name of object>Text</name of object> 

相反,它使用

<enclosure url=... blah blah blah /> 

如何獲取URL的值?它等於一個字符串(url="url is here"

回答

0

綜觀feedparse docs嘗試使用條目[I] .enclosures [j]的.href參考它返回鏈接文件的URL:

feed = feedparser.parse("http://www.huffingtonpost.com/feeds/verticals/good-news/index.xml") 

l = feed.entries[12].enclosures[1].href