Django и Feedparser - не удается разобрать URL-адреса, запрошенные из модели

По сути, я сохраняю несколько URL-адресов каналов в модели Django, и для анализа URL-адреса, которые я извлекаю из модели, не анализируются. Ниже показано, как я пытаюсь запросить модель и разобрать URL-адрес с помощью 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?


person Anshuma    schedule 23.03.2012    source источник


Ответы (1)


Вы передаете список dict в 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')
person jpic    schedule 23.03.2012
comment
Пожалуйста, закройте вопрос - person jpic; 23.03.2012
comment
Извини, моя ошибка. я забыл это сделать - person Anshuma; 23.03.2012