通过Google Feed API v0或v1获取发布或接收日期

时间:2012-06-03 00:11:58

标签: java json rss rss-reader google-feed-api

啊,我的第一篇文章......

我正在使用Google Feed API-v1(https://developers.google.com/feed/v1/),并且有一些RSS Feed,其中“publishedDate”为空白即 - “:”,表示RSS发布者未将文章日期传递到其RSS源中。例如,我正在从http://www.globest.com/index.xml中提取文章,而他们的Feed没有“publishedDate”或“pubDate”;但是,当我将www.globest.com/index.xml放入Google阅读器时,标题旁会显示一篇文章日期。我了解Google阅读器中文章旁边的日期是“已收到”或“已发布”日期。 Google在此解释了术语http://support.google.com/reader/bin/answer.py?hl=en&answer=78728

所以我的问题.... Google Feed API v1中有一种方法可以获得“已收到”或“已发布”的日期吗?如果是的话,如何。如果不是,关于v0?

我正在使用Java和JSON,我的代码如下:

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.net.URL;
    import java.net.URLConnection;
    import net.sf.json.JSONObject;

    public class FeedTester 
    {

        public static void main(String[] args) throws IOException 
        {
            String loadBaseURL = "https://ajax.googleapis.com/ajax/services/feed/load";
            String googleRSSURL = "?v=1.0&q=";
            String testRSSURL = "http://www.globest.com/index.xml";
            String extra = "&callback=CB1&num=10";

            URL url = new URL(loadBaseURL+googleRSSURL+testRSSURL+extra);
            URLConnection connection = url.openConnection();
            connection.addRequestProperty("Referer", "www.YOURSITE.com");

            String line;
            StringBuilder builder = new StringBuilder();
            BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
            while((line = reader.readLine()) != null)
            {
                    builder.append(line);
            }

            JSONObject json = new JSONObject();
            json.put("values", builder.toString());

            System.out.println(json.get("values"));
        }//end main
    }//end FeedTester

1 个答案:

答案 0 :(得分:0)

我不确定Java,但在Python中你可以访问下面的publishedDate。 结果是来自谷歌的json回应。

for entries in results['responseData']['feed']['entries']:  
    print entries['publishedDate']

希望有所帮助。