从 Reddit 的 API 中检索评论

Posted

技术标签:

【中文标题】从 Reddit 的 API 中检索评论【英文标题】:Retrieving comments from Reddit's API 【发布时间】:2014-03-02 00:59:50 【问题描述】:

所以我编写了一些基于查询搜索 reddits api 的代码,并且我希望它也显示 cmets。我在$.getJSON 语句中嵌套了以下代码,该语句根据您的搜索查询提取每个标题/帖子,现在我想为找到的每个结果显示评论树(因此我将它嵌套在我原来的 getJSON 语句中)

$.getJSON("http://www.reddit.com/r/" + sub + "/comments/" + id + ".json?", function (data)
  $.each(data.data.children, function (i, item) 
    var comment = item.data.body
    var author = item.data.author
    var postcomment = '<p>[Author]' + author + '<br>' + comment + '</p>'
    results.append(postcomment)
  );
);

我有一种感觉,我可能将 $.each 语句的结构错误或其他什么。我只是按照我为其他 getJSON 语句所做的操作。有什么想法吗?

【问题讨论】:

我还在 JSONViewer 上注意到,当我使用 url 检索 cmets 时,它会拉出 [0] 和 [1],0 包含帖子的原始数据,1 包含 cmets 的数据.也许我需要指定查看 [1]? 【参考方案1】:

reddit json 包含两个对象:post 和 cmets。 cmets 位于 data[1] 这应该可以工作:

$.getJSON("http://www.reddit.com/r/" + sub + "/comments/" + id + ".json?", function (data)
  $.each(data[1].data.children, function (i, item) 
    var comment = item.data.body
    var author = item.data.author
    var postcomment = '<p>[Author]' + author + '<br>' + comment + '</p>'
    results.append(postcomment)
  );
);

【讨论】:

我收回了……它有时会起作用。不过其他时候不是。有点奇怪。如果你想看看,这是我的小提琴 - jsfiddle.net/elliotmersch/bpZXL 不,它正在工作。除了在 div 的底部而不是在每个帖子之后发布。我想我只需要一个新的 div 从这里开始。

以上是关于从 Reddit 的 API 中检索评论的主要内容,如果未能解决你的问题,请参考以下文章

搜索包含列表 PSAW python 中任何单词的 reddit 评论

消化一个月的 Reddit 评论

Facebook - 使用href从fb:comments中检索评论数?

如何使用 AndroidPublisher api 在 google play store 中检索任何 google 应用程序的评论?

GitHub API 检索通过问题评论上传的文件

获取reddit数据[关闭]