2012-03-23 40 views
1

查詢的URL基本上,我在Django模型中保存了很少的feed url,並且解析,我從模型中檢索的url,它沒有被解析。以下是我如何使用feedparser查詢模型和解析URL。Django和Feedparser - 無法解析從模型

>>> from bit.models import * 
>>> url = feednfo.objects.filter(iD=1).values('feed_url') 
>>> url 
>>> [{'feed_url': u'http://www.popgadget.net/atom.xml'}] 
>>> import feedparser as fp 
>>> feed = fp.parse(url) 
>>> feed 
>>>{'feed': {}, 'bozo': 1, 'bozo_exception': TypeError('coercing to Unicode: need string or buffer, ValuesQuerySet found',), 'entries': []} 
>>> feed = fp.parse('http://www.popgadget.net/atom.xml') 
>>> feed.bozo 
>>>0 

有誰能告訴我哪裏出問題了。 有沒有關於字符串或unicode格式的問題?

回答

0

您正在將一個字典列表傳遞給feedparser.parse()。

即:

feed = fp.parse(url) 

是這樣的:

feed = fp.parse([{'feed_url': u'http://www.popgadget.net/atom.xml'}]) 

應該是:

feed = fp.parse(url[0]['feed_url']) 

要像:

feed = fp.parse(u'http://www.popgadget.net/atom.xml') 
+0

非常感謝噸哥們。你是對的。有效。 – Anshuma 2012-03-23 09:08:41

+0

請[關閉此問題](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work) – jpic 2012-03-23 09:35:33

+0

對不起,我的不好。我忘了這麼做 – Anshuma 2012-03-23 09:46:35