有没有办法获取给定 subreddit 的所有帖子,而不仅仅是一个月以上的帖子?
Posted
技术标签:
【中文标题】有没有办法获取给定 subreddit 的所有帖子,而不仅仅是一个月以上的帖子?【英文标题】:Is there a way to get all posts for a given subreddit instead of just the posts newer than one month? 【发布时间】:2013-09-23 18:47:12 【问题描述】:有没有一种方法可以获取给定 subreddit 的所有帖子,而不是仅获取 1 个月后的帖子?
例如,这是来自 IAmA subreddit 的帖子的“最后”一页,http://www.reddit.com/r/IAmA/?count=900&limit=100&after=t3_1k3tm1,显然这不是帖子的最后一页。它不包括任何超过一个月的帖子。
【问题讨论】:
【参考方案1】:在玩过 Reddit 之后,我发现了一种获取给定 subreddit 的所有帖子的方法是使用它的搜索界面:http://www.reddit.com/r/<subreddit>/search.json?restrict_sr=on&t=all
。例如,您可以使用此请求端点获取IAmA
subreddit 下的所有帖子:http://www.reddit.com/r/IAmA/search.json?restrict_sr=on&t=all
【讨论】:
看起来这个解决方案会给你更多的结果,但仍然远远超出了完整的结果集。 如何获取用户订阅的 subreddits/mysubreddits 列表? 现在https://www.reddit.com/r/[subreddit]/new.json
返回子版块的所有帖子。
@SabbirRahman 看起来只能返回 25 个列表。
它只返回 25 个结果的原因是因为设置了默认限制。要请求更多(最多 100 个),请添加查询字符串参数“限制”,后跟要检索的结果数量。要获取下一页,请使用 before 或 after 参数来获取下一个和上一个结果。以上是关于有没有办法获取给定 subreddit 的所有帖子,而不仅仅是一个月以上的帖子?的主要内容,如果未能解决你的问题,请参考以下文章
从某个 subreddit 获取多个用户的所有评论 - Reddit Dataset