如何使用Python和Universal Feed Parser从BBC源获取图像

3 投票
2 回答
4989 浏览
提问于 2025-04-16 09:04

我正在使用这个信息源 http://feeds.bbci.co.uk/news/rss.xml,想要获取所有的媒体缩略图,也就是所有的图片。


   import feedparser
   d = feedparser.parse('http://feeds.bbci.co.uk/news/rss.xml')
   e = d['entries'][0]
   print e.media_thumbnail ## this returns ''

在这个RSS中,条目里有这些内容:



      media:thumbnail width="66" height="49" url="http://news.bbcimg.co.uk/media/images/50560000/jpg/_50560468_50557389.jpg"
      media:thumbnail width="144" height="81" url="http://news.bbcimg.co.uk/media/images/50581000/jpg/_50581208_010904244-1.jpg"

所以,信息是存在的,但我该怎么获取呢?

(我使用的是最新版本的feedparser,版本号是feedparser.version -> '4.2-pre-294-svn')

2 个回答

0

这样做也很有效,特别是如果你想在每篇文章的列表中显示图片的话:

d = feedparser.parse('http://feeds.bbci.co.uk/news/rss.xml')
for entry in d.entries:
    print(entry.media_thumbnail)
3

我使用最新的SVN版本r354成功搞定了这个:

>>> e = d['entries'][0]
>>> print e["media_thumbnail"][0]["url"]
http://news.bbcimg.co.uk/media/images/50560000/jpg/_50560468_50557389.jpg

撰写回答