代码之家  ›  专栏  ›  技术社区  ›  Rafael S. Calsaverini

FeedParser-从谷歌阅读器中检索旧消息

  •  6
  • Rafael S. Calsaverini  · 技术社区  · 16 年前

    我正在使用Python中的feedParser库从本地报纸检索新闻(我的目的是通过这个语料库进行自然语言处理),并且希望能够从RSS提要检索许多以前的条目。

    我不太熟悉RSS的技术问题,但我认为这是可能的(我可以看到,例如,当我移动滚动条时,google reader和feedly可以做到这一点)。

    当我执行以下操作时:

    import feedparser
    
    url = 'http://feeds.folha.uol.com.br/folha/emcimadahora/rss091.xml'
    feed = feedparser.parse(url)
    for post in feed.entries:
       title = post.title
    

    我只有十几个条目。我在想几百个。如果可能,可能是上个月的所有条目。是否可以只使用FeedParser进行此操作?

    我只想从RSS源获得新闻项目的链接,然后用beautifulsoup解析整个页面,以获得我想要的文本。另一种解决方案是一个爬虫,它跟踪页面中的所有本地链接以获取大量新闻项目,但我现在想避免这种情况。

    --

    出现的一种解决方案是使用谷歌阅读器RSS缓存:

    http://www.google.com/reader/atom/feed/http://feeds.folha.uol.com.br/folha/emcimadahora/rss091.xml?n=1000

    但要访问它,我必须登录到谷歌阅读器。有人知道我是怎么从蟒蛇身上做到的吗?(我真的对网络一无所知,我通常只会搞数值演算)。

    2 回复  |  直到 15 年前
        1
  •  9
  •   Bartek    16 年前

    你只能得到十几个条目,因为这就是提要包含的内容。如果你想要历史数据,你必须找到一个数据源/数据库。

    看看这个 ReadWriteWeb article 有关在Web上查找打开数据的一些资源。

    请注意,feedParser与此无关,正如您的标题所示。FeedParser解析您提供的内容。它找不到历史数据,除非你找到并将其传递给它。它只是一个解析器。希望能把事情弄清楚!:)

        2
  •  3
  •   Will McCutchen    16 年前

    扩展Bartek的答案:你也可以开始在你已经看到的提要中存储所有条目,并建立你自己的提要内容历史档案。这将延迟您开始将其用作语料库的能力(因为您必须这样做一个月,才能建立一个月的条目集合),但您不会依赖其他人来获取数据。

    我可能搞错了,但我很确定,这就是谷歌阅读器能够及时返回的方式:它们将每个提要的过去条目存储在某个地方。

    推荐文章