还可以处理FeedBurner的Python RSS解析器

Dav*_*idL 5 python rss feeds feedparser xml-parsing

我当时正在为RSS供稿编写Python解析器脚本。我使用的是feedparser,但是,我仍然无法解析FeedBurner的供稿。如今谁需要FeedBurner?无论如何..

例如,我找不到解析方法

http://feeds.wired.com/wired/index

http://feeds2.feedburner.com/ziffdavis/pcmag

当我将它们放入feedparser库时,似乎无法正常工作。尝试将?fmt = xml或?format = xml放在URL的末尾,但仍然没有采用xml格式。

我是否需要使用诸如BeautifulSoup之类的html解析器来解析FeedBurner提要?最好是已经有一个python公共解析器或聚合器脚本可以处理这个问题了吗?

任何提示或帮助将不胜感激。

ars*_*ars 5

您可能有版本问题,或者使用的API不正确-这将有助于查看错误消息。例如,以下代码可用于Python 2.7和feedparser 5.0.1:

>>> import feedparser
>>> url = 'http://feeds2.feedburner.com/ziffdavis/pcmag'
>>> d = feedparser.parse(url)
>>> d.feed.title
u'PCMag.com: New Product Reviews'
>>> d.feed.link
u'http://www.pcmag.com'
>>> d.feed.subtitle
u"First Look At New Products From PCMag.com including Lab Tests, Ratings, Editor's and User's Reviews."
>>> len(d['entries'])
30
>>> d['entries'][0]['title']
u'Canon Color imageClass MF9280cdn'
Run Code Online (Sandbox Code Playgroud)

以及其他网址:

>>> url = 'http://feeds.wired.com/wired/index'
>>> d = feedparser.parse(url)
>>> d.feed.title
u'Wired Top Stories'
>>> d.feed.link
u'http://www.wired.com/rss/index.xml'
>>> d.feed.subtitle
u'Top Stories<img src="http://www.wired.com/rss_views/index.gif" />'
>>> len(d['entries'])
30
>>> d['entries'][0]['title']
u'Heart of Dorkness: LARPing Goes Haywire in <em>Wild Hunt</em>'
Run Code Online (Sandbox Code Playgroud)