让rss格式完全相同

时间:2015-04-24 14:59:51

标签: python rss feedparser

让我直接到达那里,我试图使读者网络应用程序类似google reader,feedly等...因此我尝试使用 python 来获取rss > feedparser 库。问题是所有的网站都没有相同的格式,我的意思是其中一些没有标题,其中一些没有RSS发布日期。但是,我发现digg.com/reader是非常有用的digg的读者获得发布日期和标题的rss我也不知道这个东西是如何工作的?任何人都有任何线索或任何一点帮助将不胜感激

2 个答案:

答案 0 :(得分:0)

您可以使用feedparser来了解网站是否有atom或rss,然后处理每种类型。如果网站没有发布日期或标题,您可以使用goose-extractor等其他库提取它们(例如:

from newspaper import Article
import feedparser

def extract_date(url):
    article = Article(url)
    article.download()
    article.parse()
    date=article.publish_date
    return date

d=feedparser.parse("http://feeds.feedburner.com/webnewsit") #an italian website
d.entries[0] # the last entry
try :
    d.entries[0].published
except AttributeError:
    link_last_entry=d.entries[0].link
    publish_date=extract_date(link_last_entry)

如果您还没有获得发布日期,请告诉我

答案 1 :(得分:0)

我最近使用Feed解析器库完成了一些项目,因为很多rss提要不同,所以非常令人沮丧。对我来说最有效的是这样的:

#to get posts from hackaday.com
import feedparser
feed = feedparser.parse("http://www.hackaday.com/blog/feed/") #get feed from hackaday
feed = feed['items'] #Get items in feed (this is the best way I've found)
print feed[0]['title'] #print post title
print feed[0]['summary'] #print post summary
print feed[0]['published'] #print date published

这些只是一些不同的"字段" Feed解析器有。要找到你想要的那个,只需在python shell中运行这些命令,看看哪些符合你的需求。

相关问题