代码之家  ›  专栏  ›  技术社区  ›  Santiago Quiroga

如何在feedparser(Python)中解析多个URL?

  •  1
  • Santiago Quiroga  · 技术社区  · 10 年前

    我正在制作一个带有一些固定提要的小webapp(如中所示,你不能像Feedly或Google Reader那样添加提要)

    我试过了,但没有运气

    RSS_URLS = [
        'http://feeds.feedburner.com/RockPaperShotgun',
        'http://www.gameinformer.com/b/MainFeed.aspx?Tags=preview',
        ]
    
    feed = feedparser.parse(RSS_URLS)
    
    for post in feed.entries:
        print post.title
    

    而这个,没有运气

    RSS_URLS = [
        'http://feeds.feedburner.com/RockPaperShotgun',
        'http://www.gameinformer.com/b/MainFeed.aspx?Tags=preview',
        ]
    
    feed = []
    for url in RSS_URLS:
        feed.append(feedparser.parse(url))
    
    for post in feed.entries:
        print post.title
    
    1 回复  |  直到 10 年前
        1
  •  4
  •   Antti Haapala -- Слава Україні    10 年前

    第二种方法是可以的,但当您将提要添加到列表中时, 您还将获得条目提要列表,因此:

    RSS_URLS = [
        'http://feeds.feedburner.com/RockPaperShotgun',
        'http://www.gameinformer.com/b/MainFeed.aspx?Tags=preview',
        ]
    
    feeds = []
    for url in RSS_URLS:
        feeds.append(feedparser.parse(url))
    
    for feed in feeds:
        for post in feed.entries:
            print post.title
    

    或者制作所有帖子的平面列表, extend 该列表包含来自每个url的新条目列表:

    posts = []
    for url in RSS_URLS:
        posts.extend(feedparser.parse(url).entries)
    
    for post in posts:
        print post.title