2009-10-12 74 views
3

我想知道什么是实时获取RSS提要的最佳方式,即使没有更改,也无需下载整个提要。 我真的不介意这种语言,我只是寻找最好的方式来做到这一点。什么是实时获取RSS的最佳方式

回答

2

您可以使用ETagIf-Modified-Since头HTTP头参数。

下面是一个简单的Python代码:

etag = ... # etag of previous request 
last_modifier = ... # time of last request 

req = urllib2.Request(url) 
if etag: 
    req.add_header("If-None-Match", etag) 

if last_modified: 
    req.add_header("If-Modified-Since", last_modified) 

opener = urllib2.build_opener(NotModifiedHandler()) 
url_handle = opener.open(req) 
headers = url_handle.info() 

if hasattr(url_handle, 'code') and url_handle.code == 304: 
    # no change happened 
else: 
    # RSS Feed has changed 

的代码可以转移到你只需要添加必要的头标记,并检查返回代码的任何语言。

更新:签出此博客条目:HTTP Conditional GET for RSS Hackers

相关问题