按子版块链接获取帖子列表
查看 Reddit 帖子、评论与社区数据 API 的全部接口 →在 url 中传入子版块的完整链接。filter 可选 hot、new 或 top,文档默认值为 hot。首个请求省略 cursor;有下一页时,将响应的 meta.cursor 与相同的 url、filter 一起传回。响应包含 meta.status、meta.total、meta.cursor 与 body 数组。已观察到的帖子字段包括 id、name、title、author、subreddit、selftext、created_utc、score、ups、num_comments、permalink 与 url。created_utc 是以秒为单位的 Unix 时间戳,selftext 可能为空。 对 AskReddit 的 filter=new 实测返回了 25 篇帖子,其中有帖子在请求前数秒创建。这不代表固定页大小或送达时效保证;hot 与 top 排序尚未经过实测。对一个不存在的子版块进行测试时,返回 meta.status=200、meta.total=0、meta.cursor=null 与 body=[]。应将这种结果正常显示为空列表,不要混入无关帖子,也不要据此推断所有不可访问社区都会返回相同结构。游标列表不承诺覆盖完整历史档案。
API 功能
在线 API 演示
未找到可用的 API Key,请前往控制台创建后刷新本页。 控制台 →
/api/project/reddit/posts API 响应 (JSON)
{} curl -X GET 'https://api.opendata-api.com/api/project/reddit/posts?key=<API_KEY>&url=https%3A%2F%2Fwww.reddit.com%2Fr%2FAskReddit&filter=hot'
查询结果
使用场景
- 新帖去重队列:为选定公开子版块使用 filter=new,保存帖子标识以识别新观察到的内容。
- 社区阅读器:提供 hot、new 与 top 列表切换,不将这些模式包装为应用自行计算的趋势分数。
- 限定范围的研究语料采集:合并连续返回的列表页,同时保留请求筛选条件与采集时间。
- 内容选题积累:从社区帖子收集问题,筛选值得深入阅读的链接,再单独请求帖子详情。
常见问题
url 应该填子版块页面还是单篇帖子?
使用 https://www.reddit.com/r/AskReddit 这样的完整子版块链接。单篇讨论链接应交给帖子详情接口。这个列表返回帖子,不包含每篇帖子下的完整评论。
支持哪些列表模式,哪些经过了实测?
文档支持 hot、new 与 top,默认是 hot。实测使用 new,返回了 AskReddit 的近期帖子。hot 与 top 尚未测试,任何模式都不承诺固定刷新间隔。
Reddit 帖子列表如何使用 cursor 翻页?
首个请求省略 cursor。若 meta.cursor 非空,将其原值与相同的 url、filter 一起传入下一次请求。游标缺失、为 null 或 body 为空时停止。不要编造游标、假设固定页大小,也不要把分页当作完整历史档案。
子版块不存在时会返回什么?
已测试的不存在子版块返回 HTTP 200、meta.status=200、meta.total=0、null 游标与空 body 数组。请将这个已观察到的结构视为空列表。该测试并未确认私密、受限或其他不可访问社区的响应方式。