2010-10-15 36 views
0

我想很簡單的東西:Python中的YouTube GDATA Player錯誤

>>> urls = getlist() 
Traceback (most recent call last): 
    File "<pyshell#2>", line 1, in <module> 
    getlist() 
    File "<pyshell#1>", line 9, in getlist 
    urls.append(entry.media.player.url) 
AttributeError: 'NoneType' object has no attribute 'url' 
:獲得來自YouTube GDATA模塊播放器的URL列表,

def getlist(): 
    index = 1 
    prev = 0 
    urls = [] 
    while True: 
    uri = "http://gdata.youtube.com/feeds/api/playlists/E005D335B57338D1?start-index=%i&max-results=50" % index 
    feed = yt_service.GetYouTubeVideoFeed(uri) 
    for entry in feed.entry: 
     urls.append(entry.media.player.url) 
    if prev == len(urls): break 
    prev = len(urls) 
    index += 50 
    return urls 

但是,調用的GetList當出現以下錯誤

我不知道爲什麼會發生這種情況,它幾個星期前工作... 任何想法?

回答

1

你應該添加一個檢查,以保證玩家不爲空:

... 
for entry in feed.entry: 
    if entry.media.player is not None: 
    urls.append(entry.media.player.url) 
...