本站提供各类榜单的 JSON 数据,包括当前榜单与历史快照。所有接口均为 GET 请求,无需鉴权,已开启跨域;数据随采集更新,请勿高频轮询。
采集仅在榜单内容发生变化时写入记录:内容未变时不写入,发生变化时写入一条记录,并保存该时刻的榜单。因此历史数据由若干变化时刻组成,不按固定时间间隔逐条保存。
查询历史快照需先获取变化时刻列表,再以其中某一时刻查询对应榜单。历史快照仅包含排名与标题,不包含热度、角标及附加指标。
快速开始
- 从下方「榜单标识」表里选一个,例如
weibo - 取当前榜单:
GET /api/board/{榜单标识} - 取变化时刻列表:
GET /api/board/{榜单标识}/times?day=YYYYMMDD - 从返回的
times中挑一项,按 14 位格式代入:GET /api/board/{榜单标识}/history?at=YYYYMMDDHHmmss
榜单标识
| 榜单 | 标识 | 接口 |
|---|---|---|
| 微博热搜 | weibo | /api/board/weibo |
| 百度热搜 | baidu | /api/board/baidu |
| 今日头条热榜 | toutiao | /api/board/toutiao |
| 抖音热榜 | douyin | /api/board/douyin |
| 快手热榜 | kuaishou | /api/board/kuaishou |
| 哔哩哔哩热搜 | bilibili-search | /api/board/bilibili-search |
| 夸克热搜 | quark | /api/board/quark |
| 贴吧热议榜 | tieba | /api/board/tieba |
| 哔哩哔哩排行榜 | bilibili | /api/board/bilibili |
| AcFun 排行榜 | acfun | /api/board/acfun |
| IT之家热榜 | ithome | /api/board/ithome |
| 腾讯新闻热点榜 | tencent-news | /api/board/tencent-news |
| 澎湃新闻热榜 | thepaper | /api/board/thepaper |
| 掘金热榜 | juejin | /api/board/juejin |
| 知乎热榜 | zhihu | /api/board/zhihu |
| 虎扑热帖 | hupu | /api/board/hupu |
| 雪球热股榜 | xueqiu | /api/board/xueqiu |
| 微信读书飙升榜 | weread | /api/board/weread |
| 网易云音乐热歌榜 | netease-music | /api/board/netease-music |
| 豆瓣新片榜 | douban-movie | /api/board/douban-movie |
1. 当前榜单
GET /api/board/{榜单标识}
最新一轮的完整条目,含热度、角标与附加指标。
返回字段
| 字段 | 说明 |
|---|---|
board | 榜单标识 |
updated | 最近采集时间,unix 秒 |
items | 条目数组,每个元素的字段如下 |
items.id | 条目稳定标识(16 位十六进制) |
items.rank | 名次,从 1 起 |
items.title | 标题 |
items.url | 跳转地址(本站 /go 短链,302 到原文并统计点击量) |
items.hot | 热度值,纯数字字符串;无值时不输出 |
items.tags | 角标数组(如 热、独家);无值时不输出 |
items.metrics | 附加指标数组,元素为 {key, label, value, unit}(如回答数);无值时不输出 |
items.is_new | 是否新上榜(与上一轮对比) |
items.rank_delta | 与上一轮相比的排名变化,正=上升、负=下降 |
2. 变化时刻列表
GET /api/board/{榜单标识}/times
只返回时刻列表,不含条目。按时间窗口或指定日期二选一。
参数
| 参数 | 必填 | 说明 |
|---|---|---|
hours | 二选一 | 1–720 的整数小时(最长 30 天),返回最近 N 小时的全部变化时刻 |
day | 二选一 | 8 位日期(如 20260101),返回该自然日(北京时间)的全部变化时刻,不受 hours 上限限制 |
返回字段
| 字段 | 说明 |
|---|---|
board | 榜单标识 |
from | 窗口起点,unix 秒(按天查询时为当天 00:00:00) |
to | 窗口终点,unix 秒(按天查询时为当天 24:00:00,若为今天则到当前时刻) |
day | 按天查询时回显该日期,8 位字符串;按小时查询不输出 |
times | 变化时刻数组,unix 秒,升序;每个元素都可作为接口 3 的 at |
3. 历史快照(某一时刻的榜单)
GET /api/board/{榜单标识}/history?at={变化时刻}
参数
| 参数 | 必填 | 说明 |
|---|---|---|
at | 是 | 必须是变化时刻之一(来自接口 2 的 times);14 位「年月日时分秒」,如 20260101091203 |
返回字段
| 字段 | 说明 |
|---|---|
board | 榜单标识 |
ts | 命中的变化时刻(与 at 等值),unix 秒 |
items | 该时刻的条目,每个元素的字段如下(历史只保存 ID 序列,无热度、角标与附加指标数组) |
items.id | 条目标识 |
items.rank | 该时刻的名次 |
items.title | 标题 |
items.url | 跳转地址 |
items.is_new | 是否相对上一条变化新上榜 |
items.rank_delta | 相对上一条变化的排名变化,正=上升、负=下降 |
4. 榜单内搜索
GET /api/board/{榜单标识}/search?q={关键词}
在该榜单历史条目里按标题搜索(含已下架),按最近在榜时间倒序,单次最多返回 200 条(total 为真实命中数,超出时用时间段缩小范围)。
参数
| 参数 | 必填 | 说明 |
|---|---|---|
q | 是 | 关键词,最长 50 字 |
from | 否 | 8 位日期,限定条目在榜时间段的起点 |
to | 否 | 8 位日期,限定条目在榜时间段的终点 |
返回字段
| 字段 | 说明 |
|---|---|
board | 榜单标识 |
q | 回显的关键词 |
total | 满足条件的命中总数(可能大于 items 长度,即被截断) |
limit | 单次返回上限(目前 200) |
items | 命中数组,每个元素的字段如下 |
items.board | 榜单标识 |
items.board_name | 榜单名 |
items.id | 条目标识 |
items.title | 标题 |
items.url | 跳转地址 |
items.status | on=在榜 / off=已下架 |
items.first_seen | 首次在榜时间,unix 秒 |
items.last_seen | 最近在榜时间,unix 秒;与 first_seen 相减即在榜时长 |
items.current_rank | 当前排名 |
items.peak_rank | 历史最高排名 |
通用约定
响应包体统一为 {code, msg, data};发生错误时,HTTP 状态码与 code 一致:400 表示参数错误,404 表示榜单不存在或该时刻无记录,500 表示服务端错误。msg 为错误原因说明。