抖音数据查询方法
核心理念
抖音数据查询的核心是从业务问题到结构化数据的映射。每个业务问题("这个达人值不值得合作?""当前什么话题火?""竞品在做什么内容?")都有对应的数据需求,而每个数据需求都能映射到具体的API端点。
查询的难点不在于"怎么调API",而在于"调哪个端点、传什么参数、失败了怎么办"。本方法将7大查询域的端点映射、参数规范、降级策略整理为结构化知识,让查询从"翻文档试错"变为"按图索骥"。
适用范围广泛。 达人筛选、内容选题、竞品监测、舆情分析、品牌评估——任何需要抖音数据支撑的业务场景都可以用本方法。
查询三步法
第一步:意图识别与端点匹配
从用户需求中提取查询意图,匹配到具体的API端点:
| 查询意图 | 查询域 | 核心端点 |
|---|---|---|
| "热搜""热点""什么火" | 热榜 | fetch_hot_search_result |
| "搜""找""查" | 搜索 | fetch_general_search_v1 |
| "视频详情""评论" | 视频 | fetch_one_video_v2 |
| "用户""达人""粉丝" | 用户 | handler_user_profile_v4 |
| "KOL""报价""星图" | 星图 | search_kol_v2 |
| "热度趋势""品牌""关键词" | 指数 | fetch_multi_keyword_hot_trend |
| "直播""直播间" | 直播 | douyin_live_room |
端点选择规则:新版本优先(v4>v3>v2),但新版本可能不稳定——调用失败时按降级映射表切换备选端点。
第二步:参数构造与API调用
- 参数构造:根据端点文档填写必填参数,注意参数类型和格式
- 请求发起:GET或POST请求,携带Authorization Bearer头
- 响应解析:提取关键字段,格式化为业务需要的数据结构
关键约束:
- 端点路径必须使用文档中的完整路径,禁止自行拼接
- 参数名必须与文档完全一致,禁止猜测
- POST请求body格式必须符合端点要求
第三步:错误处理与降级切换
主端点失败时按降级映射表切换备选端点,最多降级3次:
| 错误码 | 是否降级 | 处理方式 |
|---|---|---|
| 400 | ❌ | 参数错误,修正参数后重试 |
| 401 | ❌ | API Key无效,检查配置 |
| 403 | ❌ | 权限不足 |
| 404 | ✅ | 切换到备选端点 |
| 500 | ✅ | 切换到备选端点 |
| 429 | ❌ | 延迟5秒后重试1次 |
已知降级映射:
| 失败端点 | 降级端点 | 路径 |
|---|---|---|
| fetch_one_video_v3 | fetch_one_video_v2 | GET /api/v1/douyin/app/v3/fetch_one_video_v2 |
| fetch_one_video_v2 | fetch_one_video | GET /api/v1/douyin/app/v3/fetch_one_video |
| fetch_general_search_v1 | fetch_general_search_v2 | POST /api/v1/douyin/search/fetch_general_search_v2 |
| handler_user_profile_v4 | handler_user_profile_v3 | GET /api/v1/douyin/app/v3/handler_user_profile_v3 |
验证清单
查询完成后逐项验证,五项全部通过才算完成:
| # | 验证项 | 说明 |
|---|---|---|
| 1 | ⬜ 端点正确 | 调用的端点路径与文档一致,非自行拼接 |
| 2 | ⬜ 参数完整 | 必填参数全部提供且格式正确 |
| 3 | ⬜ 数据有效 | 返回数据非空且字段完整 |
| 4 | ⬜ 降级执行 | 主端点失败时是否正确切换到备选端点 |
| 5 | ⬜ 格式规范 | 输出数据按业务需求格式化 |
领域要求清单
Q0-01 热榜查询
- 必选组件: 热搜列表(关键词+排名+热度值)、查询时间
- 可选组件: 热点类型(总榜/上升/同城/挑战)、分页参数、城市代码
- 组装顺序: 意图识别→端点选择→参数构造→API调用→结果解析→格式化输出
- 约束: 热搜榜无需参数;总榜/上升榜需page+page_size;同城榜需city_code
- 格式: 排名表格(排名+关键词+热度+分类)
Q0-02 搜索查询
- 必选组件: 搜索关键词、搜索结果列表、结果总数
- 可选组件: 排序方式(综合/点赞/最新)、发布时间过滤、翻页游标
- 组装顺序: 意图识别→端点选择→body构造→API调用→结果解析→翻页处理
- 约束: POST请求body格式固定;cursor首次传0,翻页用返回值;sort_type: 0=综合, 1=点赞, 2=最新
- 格式: 搜索结果列表(标题+作者+播放量+点赞+链接)
Q0-03 视频查询
- 必选组件: 视频ID(aweme_id)、视频详情(标题+作者+播放量+点赞+评论+收藏+分享)
- 可选组件: 评论列表、弹幕列表、分享链接解析
- 组装顺序: 意图识别→ID获取→端点选择→API调用→详情解析→评论/弹幕获取
- 约束: aweme_id可从分享链接或搜索结果获取;v3为v2的备选
- 格式: 视频详情卡片
Q0-04 用户查询
- 必选组件: 用户ID(sec_user_id)、用户详情(昵称+粉丝数+关注数+获赞+作品数+简介)
- 可选组件: 粉丝列表、关注列表、作品列表
- 组装顺序: 意图识别→ID获取→端点选择→API调用→详情解析→关联数据获取
- 约束: sec_user_id是核心标识;可从其他接口的author.sec_uid获取
- 格式: 用户画像卡片
Q0-05 星图查询
- 必选组件: KOL ID(kolId)、KOL基础信息
- 可选组件: 数据概览、粉丝画像、报价、视频表现
- 组装顺序: 意图识别→KOL ID获取→端点选择→API调用→信息解析
- 约束: kolId需通过uid→kolId转换;报价和粉丝画像需单独端点
- 格式: KOL评估卡片
Q0-06 指数查询
- 必选组件: 关键词、热度趋势数据(时间+热度值)、查询时间范围
- 可选组件: 关联词、品牌搜索建议、品牌趋势线
- 组装顺序: 意图识别→端点选择→参数构造→API调用→趋势解析
- 约束: 日期格式YYYYMMDD;keyword_list为数组;趋势数据需至少7天跨度
- 格式: 趋势数据表格+分析结论
Q0-07 直播查询
- 必选组件: 直播间信息(标题+主播+观看人数+状态)
- 可选组件: 直播间号转换、room_id转换
- 组装顺序: 意图识别→端点选择→参数构造→API调用→信息解析
- 约束: live_room_url为直播间完整URL;webcast_id和room_id可互相转换
- 格式: 直播间信息卡片
领域范本
QF-01 数据查询范本
对应任务: Q0-01 ~ Q0-07
适用场景: 任何需要抖音数据支撑的业务场景
查询范本:
## 抖音数据查询记录
### Step 1:意图识别(Q0-0X)
**业务问题**:________
**查询域**:________(热榜/搜索/视频/用户/星图/指数/直播)
**复杂度**:⬜单步查询 / ⬜链式查询(___步)
### Step 2:端点与参数
**主端点**:________
**完整路径**:________
**方法**:________(GET/POST)
| 参数名 | 值 | 类型 |
|--------|-----|------|
| ________ | ________ | ________ |
**备选端点**:________
### Step 3:调用与结果
**调用结果**:⬜成功 / ⬜失败(错误码:___)
**降级执行**:⬜未触发 / ⬜已切换
| 字段 | 值 |
|------|-----|
| ________ | ________ |
### Step 4:格式化输出
**输出模式**:⬜Browse / ⬜Analyze / ⬜Compare
[格式化数据输出]
范本要点:
- 端点路径必须来自文档,不可自行拼接
- 主端点失败时必须尝试备选端点
- 参数必须精确匹配文档要求
________为待用户提供的内容,不可AI编造
参考文件
references/maxhub-full-doc.md— MaxHub API完整文档(端点表/安全声明/交互流程/降级策略/错误处理)references/api-video.md— 视频与内容端点详细文档references/api-user.md— 用户数据端点详细文档references/api-search.md— 搜索端点详细文档references/api-trending.md— 热榜与趋势端点详细文档references/api-xingtu.md— 星图端点详细文档references/api-creator.md— 创作者端点详细文档references/api-index.md— 指数与分析端点详细文档references/param-mappings.md— 参数映射表与降级策略
API规范
认证
Base URL: https://www.aconfig.cn
maxhub_auth_header="Authorization: Bearer ${MAXHUB_API_KEY}"
请求格式
# GET
curl -s "https://www.aconfig.cn/api/v1/douyin/{endpoint}?{params}" -H "$maxhub_auth_header"
# POST
curl -s -X POST "https://www.aconfig.cn/api/v1/douyin/{endpoint}" -H "$maxhub_auth_header" -H "Content-Type: application/json" -d '{...}'
数字格式
| 用户语言 | 数字格式 | 示例 |
|---|---|---|
| 中文 | 万/亿 | 1.2亿 |
| English | K/M/B | 120M |
使用规则
- 判断查询域:根据业务意图匹配最相关的查询域
- 按三步执行:意图识别→参数构造与调用→错误处理与降级
- 产出交付:按领域要求清单逐项填充,或按QF-01范本结构替换实际内容
- 降级策略:主端点404/500/410时按降级映射表切换,最多降级3次
- 用户主权:AI产出的数据分析是起点,用户对结论有最终判断权
事实纪律
- API端点路径必须基于MaxHub文档实际路径,不得自行拼接或猜测
- 数据来源必须标注"第三方API数据,仅供参考"
- 涉及用户隐私的数据查询必须提醒合规要求
- 查询效果数据标注为"参考范围",实际效果取决于API可用性
