zoukankan      html  css  js  c++  java
  • google reader api,互联网营销 狼人:

    Google Reader 是一个使用了大量JavaScript构建的feed聚合器,它能非常及时地抓取最新的feed数据。Google的Ajax前台调用到的数据采用了Atom格式,这种数据技术降低了Google Reader的开发难度,同时也使得第三方应用很容易对其进行扩展。

    Feed获取

    /reader/atom/feed/

    不管feed一开始采用了什么格式,Google都将其转化为Atom格式。所有的RSS feed包含一切在提要里边出现的所有元素,这一点和My Yahoo! backend不一样,Yahoo的不包含任何附加的元数据。

    你可以一下的格式从Google Reader访问任何feed:

    • http://www.google.com/reader/atom/feed/ + [Feed地址]

    你可以通过参数n设置返回的文章数量,默认为20。

    Google忽略掉在阅读器里边没有用的数据,它们包括命名空间(如Apple iTunes podcast、Yahoo! Media RSS的命名空间)、作者信息(如email、主页地址等)、甚至于版权等内容。

    订阅列表

    /reader/atom/user/[user id]/pref/com.google/subscriptions

    Google Reader的feed订阅列表包含用户当前订阅的和已经被删除的订阅。每个feed包含其地址、发布和更新时间、用户标记的标签(如果有的话)。当前订阅都被归类到阅读列表状态。通过设置complete为true,你还可以获取到所有的feed列表。

    这里是我在Google Reader用户ID全部为0的账户的订阅列表。我没有订阅我自己的RSS feed,不过给我的Atom feed打上了标签。不管在原feed里边是否声明了作者,在每个列出的feed包含author元素都是空的。也许Google计划增加feed的认领服务,不过即使是他们自己的Google Blog,也还是没有任何额外的作者信息。

    阅读列表

    /reader/atom/user[user id]/state/com.google/reading-list

    我最喜欢Google Reader的阅读列表功能,它能直接访问到我订阅feed中所有未读的文章,以一种“新闻流”的方式展现它们。

    这里有一个我的阅读列表的例子,你同样可以通过参数n设置返回文章的数量。

    已阅读文章

    http://www.google.com/reader/atom/user/[user ID]/state/com.google/read

    你可以通过这个API获取到用户在Google Reader里边已读的文章。如果想通过用户最近阅读的100篇文章分析其趋势或者实现对它们的查询,那么这个功能就很有用了。参数n同样可以设置返回的文章数量。

    某标签下的文章列表

    /reader/atom/user/[user id]/label/[tag]

    你还可以查看指定标签下最近发表的文章。比如你把很多feed标记为“营销”,只是想访问有关营销的feed,这就很有用了。返回的内容中包含已读和未读的文章。已读的文章被归类到已读(state/com.google/read),你可以通过这判断是否将它们隐藏起来。返回的数量可以通过参数n来判断。

    标星文章

    /reader/atom/user[user id]/state/com.google/starred

    Google Reader允许用户对文章标星。这些标星文章包括有feed地址、标签、发布/更新时间。你可以通过参数n指定返回的数量,默认为20。

    Google将标星项目视作一种特殊的标签,因此输出的内容和标签下文章列表结构一致。

    添加或删除订阅

    /reader/api/0/edit-subscription

    使用POST请求访问Google Reader的API,你可以添加任何feed到Google Reader的订阅列表。

    • /reader/api/0/edit-subscription -- 基本地址
    • ac=["subscribe" 或者 "unsubscribe"] -- 请求动作
    • s=feed%2F[feed URL] -- 请求的订阅
    • T=[命令标识] -- Google发布的具有时效性的标识,可以通过/reader/api/0/token获取。

    添加标签

    /reader/api/0/edit-tag

    通过HTTP的POST请求可以给一个feed或单独的文章打上标签。

    • /reader/api/0/edit-tag -- 基本地址
    • s=feed%2F[feed URL] -- 你想打标签的feed地址
    • i=[item id] -- 出现在feed中的文章的id,可选,用来给个别的文章打标签。
    • a=user%2F[user ID]%2Flabel%2F[标签] -- 请求动作,添加标签给feed,文章,或者两者。
    • a=user%2F[user ID]%2Fstate%2Fcom.google%2Fstarred -- 标星文章。
    • T=[special scramble] -- 关于用户和新标签的信息。可能处于安全因素考虑,尚未公开。

    总结

    基于对Google上面这些和县官服务的请求,你有可能构建自己的feed阅读器。你可以把Google作为你的后台,创建具有全新体验的在线和离线的程序,利用Google的ID,略施小计,你还可以创建更加高级的功能。

    Google已经在这些数据API之上建立了第一个程序——Google Reader,从他们对API地址的选择之上来看的话,Google Reader应该不是最后一个基于这些数据集的程序。我喜欢数据调用的开放,Google Reader 的API是如此简单,相信会引导Google和第三方开发者创建更多的新应用!

    参考资料:http://code.google.com/p/pyrfeed/wiki/GoogleReaderAPI

  • 相关阅读:
    CefSharp 无法输入中文的问题
    CEF编译 执行gn args outRelease_GN_x86异常
    【Cef编译】 CefSharp编译失败,检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MD_DynamicRelease”
    ResourceDictionary主题资源替换(二) :编译期间,替换主题资源
    C# 打开文件/跳转链接
    C# 动态加载资源
    一套简约漂亮的响应式博客园主题皮肤分享给你们(一)
    Grok Debugger安装配置
    深入理解Java AIO(一)—— Java AIO的简单使用
    深入理解NIO(四)—— epoll的实现原理
  • 原文地址:https://www.cnblogs.com/waw/p/2164148.html
Copyright © 2011-2022 走看看