
全网热门榜单数据源
Use when the user asks for hot trending topics, hot search rankings, or popular news from social media platforms in China and globally (keywords:热门榜单、热榜、热搜、热搜排行、热门话题、trending、hot topics、知乎热榜、微博热搜、B站热门、抖音热榜、今日头条、热门新闻). Provides unified access to 40+ platforms popular boards including Sina Weibo, Zhihu, Bilibili, Douyin, V2EX, and Hacker News trending stories. Do NOT use for private user data, authentication-required APIs, or non-trending content.
Skill 文件
| name | hotboard-datasource |
|---|---|
| title | 全网热门榜单数据源 |
| description | Use when the user asks for hot trending topics, hot search rankings, or popular news from social media platforms in China and globally (keywords:热门榜单、热榜、热搜、热搜排行、热门话题、trending、hot topics、知乎热榜、微博热搜、B站热门、抖音热榜、今日头条、热门新闻). Provides unified access to 40+ platforms popular boards including Sina Weibo, Zhihu, Bilibili, Douyin, V2EX, and Hacker News trending stories. Do NOT use for private user data, authentication-required APIs, or non-trending content. |
| tools | curl |
全网热门榜单数据源
通过 curl tool 调用多个开源、免费、无需鉴权的热门榜单API,获取全球及国内主流平台的热搜、热门话题、热门内容数据。
鉴权
本数据源涉及的所有 API 完全免费且无需任何鉴权,无需 API Key、Token、Cookie 或登录凭证。直接发送 HTTP GET 请求即可获取数据。
注:以下 API 均经实测验证为可直接访问的公开接口
通用约定
- 无需鉴权:所有接口直接访问,无需传任何认证参数
- 响应格式:JSON(部分接口返回纯文本 Markdown)
- 请求方法:仅使用 GET
- 分页:所有接口都不支持分页,返回固定数量的热门条目(通常 30-50 条)
- 速率限制:无严格限制,但建议相邻请求间隔至少 3 秒,避免频繁请求
- 数据时效:热榜数据实时更新,每次调用获取当前最新热榜
⚠️ 速率限制策略(必须遵守)
- 串行请求:同一时间只发 1 个 curl 请求,等返回后再发下一个。严禁并行发送多个请求
- 请求间隔:每两个请求之间至少间隔 3 秒
- 批量查询:需要查多个平台热榜时,一次只查一个平台,轮询获取
- 429/503 重试:收到 429 或 503 错误后等待 60 秒再重试,严禁立即重试
- 数据复用:已获取的热榜结果可以缓存 2-3 分钟,不要频繁重复请求同一平台
平台与类型编码对照表
| 平台名称 | UAPI编码 | 说明 |
|---|---|---|
| 微博热搜 | weibo | 新浪实时热搜 |
| 知乎热榜 | zhihu | 知乎热门话题 |
| 哔哩哔哩 | bilibili | B站热门视频 |
| 抖音热榜 | douyin | 抖音热门话题 |
| 今日头条 | toutiao | 头条热门 |
| 百度热搜 | baidu | 百度搜索热榜 |
| 小红书 | xiaohongshu | 小红书热榜 |
| 快手热榜 | kuaishou | 快手热门 |
| V2EX | v2ex | 技术社区热门 |
| 虎扑 | hupu | 虎扑社区热帖 |
| IT之家 | ithome | 科技资讯热榜 |
| 百度贴吧 | tieba | 贴吧热门 |
| CSDN | csdn | 程序员社区热门 |
| 掘金 | juejin | 开发者社区热门 |
| 微信公众号 | weixin | 公众号热门文章 |
| 少数派 | sspai | 科技媒体热榜 |
| 豆瓣新片榜 | douban_new_movies | 豆瓣电影新片排行 |
| 36氪 | kr36 | 创业资讯热榜 |
| 什么值得买 | smzdm | 消费资讯热门 |
| 绝地求生 | pubg | 游戏热门 |
| 原神 | genshin | 游戏热门 |
| GitHub | github | GitHub 热门项目 |
常用接口
1. UAPI 热榜聚合 - 获取指定平台热榜
免费聚合接口,一键获取 40+ 平台实时热榜,支持热度值、排名、原始链接等完整数据。
GET https://uapis.cn/api/v1/misc/hotboard?type={platform}参数:
| 参数名 | 位置 | 必填 | 说明 |
|---|---|---|---|
type | query | 是 | 热榜平台编码,详见「平台与类型对照表」 |
关键返回字段:
| JSON Path | 类型 | 说明 |
|---|---|---|
list[].title | string | 热榜标题/话题名称 |
list[].hot | string/int | 热度值或热度标签 |
list[].url | string | 原始链接 |
list[].rank | int | 排名序号 |
list[].source | string | 来源标签(如"爆"、"热"、"新") |
示例请求:
curl(url = "https://uapis.cn/api/v1/misc/hotboard?type=weibo", X = "GET")Curl 调用示例:
curl 'https://uapis.cn/api/v1/misc/hotboard?type=weibo'2. Hacker News 热门故事 - 获取Top Stories
官方 API,获取全球技术圈热门的 Top Stories(最多 500 条,ids 列表)。
GET https://hacker-news.firebaseio.com/v0/topstories.json参数:无
关键返回字段:
| JSON Path | 类型 | 说明 |
|---|---|---|
root[] | 整数数组 | 故事 ID 列表,最多 500 个 id |
注意:此接口仅返回 ID 列表,需要进一步调用「获取故事详情」接口获取具体内容。
Curl 调用示例:
curl 'https://hacker-news.firebaseio.com/v0/topstories.json'3. Hacker News - 获取故事详情
根据故事 ID 获取完整的故事信息(标题、链接、分数、评论数等)。
GET https://hacker-news.firebaseio.com/v0/item/{id}.json参数:
| 参数名 | 位置 | 必填 | 说明 |
|---|---|---|---|
id | path | 是 | 故事 ID(从 topstories.json 获取) |
关键返回字段:
| JSON Path | 类型 | 说明 |
|---|---|---|
title | string | 故事标题 |
url | string | 故事链接 |
score | int | 投票分数/热度 |
descendants | int | 评论数量 |
by | string | 作者用户名 |
time | int | 发布时间戳(Unix time) |
type | string | 类型:story/comment/job |
Curl 调用示例:
curl 'https://hacker-news.firebaseio.com/v0/item/42089356.json'4. Bilibili 综合热门
获取 Bilibili 当前综合热门视频榜单。
GET https://api.bilibili.com/x/web-interface/popular参数:无
关键返回字段:
| JSON Path | 类型 | 说明 |
|---|---|---|
data.list[].title | string | 视频标题 |
data.list[].bvid | string | BV号 |
data.list[].short_link | string | 短链接 |
data.list[].stat.view | int | 播放量 |
data.list[].stat.like | int | 点赞数 |
data.list[].stat.danmaku | int | 弹幕数 |
data.list[].owner.name | string | UP主名称 |
Curl 调用示例:
curl 'https://api.bilibili.com/x/web-interface/popular'5. Hacker News 其他分类榜单
GET https://hacker-news.firebaseio.com/v0/newstories.json # 最新故事GET https://hacker-news.firebaseio.com/v0/beststories.json # 最佳故事GET https://hacker-news.firebaseio.com/v0/askstories.json # Ask HNGET https://hacker-news.firebaseio.com/v0/showstories.json # Show HNGET https://hacker-news.firebaseio.com/v0/jobstories.json # 招聘信息返回格式:与 topstories.json 相同,返回 ID 列表。
6. Jina AI Reader - 网页内容提取
无需鉴权的网页提取 API,可将任意网页转换为干净的 Markdown 格式,适合提取 Hacker News、Lobsters 等社区的内容。
GET https://r.jina.ai/http://{url}GET https://r.jina.ai/http://news.ycombinator.comGET https://r.jina.ai/http://lobste.rs参数:
| 参数名 | 位置 | 必填 | 说明 |
|---|---|---|---|
url | path | 是 | 目标网页 URL(需在 r.jina.ai/http:// 后直接拼接) |
关键返回字段:
| 类型 | 说明 |
|---|---|
| 纯文本/Markdown | 网页内容以 Markdown 格式返回 |
Curl 调用示例:
curl 'https://r.jina.ai/http://news.ycombinator.com'curl 'https://r.jina.ai/http://lobste.rs'使用建议:
- 用于获取 Hacker News、Lobsters 等社区的首页内容
- 返回格式为 Markdown,需要 AI 解析提取热门条目
- 可与 HN API 配合使用:先用此获取标题预览,再用 HN API 获取详细数据
调用示例
场景 1:用户询问"今天微博热搜有哪些?"
- 调用 UAPI 获取微博热榜:
curl 'https://uapis.cn/api/v1/misc/hotboard?type=weibo'- 从返回中提取数据:
- 取
list数组的前 10-20 条 - 从每条提取
title(标题)、hot(热度)、url(链接)
- 整理输出: 按排名展示微博热搜列表,包含话题名称和热度值。
场景 2:用户询问"全球技术圈今天都在关注什么?"
- 获取 Hacker News Top Stories ID 列表:
curl 'https://hacker-news.firebaseio.com/v0/topstories.json'- 从返回中提取前 5-10 个 ID:
- 返回是一个整数数组,如
[42089356, 42088145, ...]
- 获取具体故事详情(每次请求间隔 3 秒):
curl 'https://hacker-news.firebaseio.com/v0/item/42089356.json'curl 'https://hacker-news.firebaseio.com/v0/item/42088145.json'- 从详情中提取:
title- 故事标题url- 故事链接score- 投票分数descendants- 评论数
- 整理输出: 按热度分数排序展示。
场景 3: 用户询问"Lobsters 社区今天有什么热门内容?"
由于 Lobsters 没有 JSON API,使用 Jina AI Reader 提取:
curl 'https://r.jina.ai/http://lobste.rs'- 解析返回的 Markdown:
- 提取首页故事标题和链接
- 整理为结构化列表
场景 4: 获取完整的热门内容列表(覆盖国内外主流平台)
按以下顺序轮询(每个请求间隔 3 秒):
curl 'https://uapis.cn/api/v1/misc/hotboard?type=weibo' # 微博(国内)curl 'https://uapis.cn/api/v1/misc/hotboard?type=zhihu' # 知乎(技术等3秒)curl 'https://uapis.cn/api/v1/misc/hotboard?type=bilibili' # B站(再等3秒)curl 'https://hacker-news.firebaseio.com/v0/topstories.json' # HN(再等3秒)然后获取 HN 故事详情(每次请求间隔 3 秒)。
错误处理
| HTTP 状态码 | 含义 | 应对方式 |
|---|---|---|
| 200 | 成功 | 正常解析返回的 JSON/Markdown 数据 |
| 400 | 参数错误(UAPI) | 检查 type 参数是否拼写正确 |
| 429 | 请求过频 | 等待 60 秒后重试,调整请求间隔 |
| 500 | 服务器内部错误 | 等待 60 秒后重试 |
| 502/503 | 网关错误/服务不可用 | 服务器暂时不可用,稍后重试 |
| 404 | HN 故事不存在 | 该 ID 可能已被删除,跳过继续下一个 |
特殊处理说明:
Hacker News Story ID 可能为空(null):
- 如果故事已被删除,
/v0/item/{id}.json可能返回null - 解析时需先判断是否为 null,再读取字段
UAPI 部分平台数据缺失:
- 某些平台在特定时间可能没有热榜数据
- 返回码仍为 200,但
list数组为空 - 在这种情况下告知用户该平台暂无热榜数据
Jina AI Reader 处理限制:
- 部分网站可能有反爬机制,无法成功提取
- 如果返回内容为空或混乱,改用 HN API 获取
输出格式建议
向用户展示热榜数据时,建议按以下格式组织:
- 分平台展示 - 将不同平台热榜分组
- 取 Top N - 每个平台只展示热度最高的前 10-20 条
- 包含热度标识 - 展示热度值或热门标签(爆/热/新/沸)
- 提供原始链接 - 每个条目附带链接,方便用户点击查看详情
- 标注时间 - 说明数据获取时间,便于用户判断时效性
注意事项
- Dev.to API:需要 API Key 获取非公开文章,不在本 Skill 范围内
- momoyu/pengyou.com:未找到公开可用且无需鉴权的 API 端点,如有更新可后续添加
- GitHub Trending:暂时没有官方 API,可通过 Jina AI Reader 提取 trending 页面或定期关注开源项目提供的第三方 API