最近在研究 AI Agent 的 Skills 生态时,有一个 Skill 特别值得拿出来聊一聊:hot-topics。
这个 Skill 做的事情非常直白——把国内主流平台的热点话题一把抓过来。像是微博热搜、知乎热榜、百度热搜、抖音热点、B站热门、今日头条热榜,全都能拿到。
实际调用时,统一访问一个 API 就搞定,比如这样:
curl https://60s.viki.moe/v2/weibo
curl https://60s.viki.moe/v2/zhihu
curl https://60s.viki.moe/v2/baidu/hot
curl https://60s.viki.moe/v2/douyin
curl https://60s.viki.moe/v2/bili
很多人看到这里会好奇:这些热点数据到底是怎么从各个平台拿到的?今天这篇就从工程角度,把背后的原理拆开来看。
一、原理
这个 Skill 背后的核心技术其实很朴素:找到各个平台的热点数据接口,抓下来,再统一格式输出。
本质就三步:
- 找接口——各个平台基本都有 Web API,关键是要知道它们的存在。
- 抓数据——用 HTTP 请求拿到 JSON 格式的数据。
- 统一结构——把不同格式的数据整理成统一 API 供调用。
整个流程可以概括为:
各平台热点接口 → 抓取原始数据 → 解析 → 存储 → 统一数据结构 → 对外 API → AI Agent 调用
所以理解这个 Skill 的关键,就在于摸清楚每个平台的热点接口到底怎么用。
下面一个一个来看。
二、微博热搜获取原理
很多人第一反应可能是“微博需要爬虫吧”?其实微博有 Web 接口。
接口地址:
https://weibo.com/ajax/side/hotSearch
但如果你直接在浏览器里访问这个地址,返回的结果里会提示需要登录。原因是微博会检测请求头是否来自真实的浏览器环境。
解决办法很简单:模拟浏览器请求,带上 User-Agent 和 Referer。用 curl 示例就是:
curl 'https://weibo.com/ajax/side/hotSearch' \
-H 'User-Agent: Mozilla/5.0' \
-H 'Referer: https://weibo.com'
返回的数据里,热点内容可以从 JSON body 中解析出来。
三、知乎热榜获取原理
知乎热榜有官方接口,可以直接访问:
https://www.zhihu.com/api/v3/feed/topstory/hot-list-web
浏览器打开就能看到 JSON 数据,不需要额外处理。
四、百度热搜获取原理
百度热搜的接口也是公开的:
https://top.baidu.com/api/board?platform=wise&tab=realtime
浏览器直接访问即可获取结果。
五、B 站热门获取原理
B 站提供了公开 API:
https://api.bilibili.com/x/web-interface/popular
同样可以直接访问,数据格式也比较规整。
六、抖音热点获取原理
抖音热点榜也有 Web 接口:
https://www.douyin.com/aweme/v1/web/hot/search/list/
浏览器直接访问即可。
七、今日头条热榜获取原理
今日头条的接口如下:
https://www.toutiao.com/hot-event/hot-board/?origin=toutiao_pc
同样可以直接访问获取。
八、结语
可以看到,大部分平台其实都提供了可以直接访问的热点接口,有些需要加上 User-Agent 和 Referer 来绕过简单的反爬。如果请求频率太高,可能会触发风控,工程上适当加请求头、控制频率就能稳定运行。
Skills 作为 AI Agent 的能力延伸,不仅让 Agent 能做更多事,也提供了一个绝佳的学习样板——通过拆解这些 Skill,能弄清楚背后的技术到底是怎么实现的,知其然更知其所以然。
