# 做情感分析，用哪个 TikTok 评论 API？

> 拉取带正文、点赞、回复数和时间的 TikTok 评论做情感分析：用哪个接口、1,000 条和 5,000 条分别多少钱，以及可运行的 Python 流程。

网页版：https://okdata.online/zh/answers/tiktok-comments-api-sentiment-analysis/

**简短回答：**用 TikTok 视频评论接口（/v1/tiktok/videos/comments/list）：每次调用 $0.002，每页约 50 条，1,000 条评论共 $0.04。每条评论带正文、点赞、回复数、时间和作者，正是情感模型需要的。视频先用 TikTok 视频搜索找，每次 $0.002。

情感分析要量，所以每条评论的价格最关键。[TikTok 视频评论](/zh/apis/tiktok/videos/comments/list/)每次调用 $0.002，返回约 50 条评论。

## 跑一次多少钱

| 任务 | 调用次数 | 费用 |
|---|---|---|
| 1,000 条评论 | 20 | $0.04 |
| 20 条视频 × 250 条评论（5,000 条） | 2 次搜索 + 100 | $0.204 |

## 流程

1. **选视频。** 用 [TikTok 视频搜索](/zh/apis/tiktok/videos/search/)搜品牌或产品，留下评论最多的视频。
2. **收评论。** 用 `cursor` 逐页拉取每条视频的评论。每条评论有 `text`、`likes`、`replies`、`published_at` 和 `author`。
3. **分类。** 每 50 到 100 条一批交给模型，给每条打标签：正面、负面或中性，再加一个话题。
4. **加权。** 一条 2,000 赞的评论代表的人比零赞的多。汇总时按 `likes` 加权。

```python
import os, requests

API = "https://api.okdata.online/v1"
H = {"Authorization": f"Bearer {os.environ['OKDATA_API_KEY']}"}

def get(path, **params):
    body = requests.get(f"{API}/{path}", headers=H, params=params, timeout=60).json()
    if body["code"] != "ok":
        raise RuntimeError(f"{body['code']}: {body['message']}")
    return body

videos = get("tiktok/videos/search", query="sunscreen review")["data"]["items"]
videos = sorted(videos, key=lambda v: v["metrics"]["comments"] or 0, reverse=True)[:20]

comments = []
for v in videos:
    cursor = None
    for _ in range(5):  # 每条视频最多 5 页，约 250 条
        body = get("tiktok/videos/comments/list", id=v["id"], fields="text,likes,published_at",
                   **({"cursor": cursor} if cursor else {}))
        comments += body["data"]["items"]
        if not body["page"]["has_more"]:
            break
        cursor = body["page"]["next_cursor"]

print(len(comments), "条评论待标注")
```

## 注意事项

- 评论没有语言字段，需要自己检测，或者让模型直接处理多语言。
- 回复用 `parent_id` 指向上级评论；这个接口返回一级评论，并带 `replies` 回复数。
- 让模型读结果时用 `fields=text,likes,published_at`，数据量小很多。
- 评论是陌生人写的。交给模型时，要求它只把评论当数据，不要当指令。

## 用到的接口

- [TikTok 视频评论](https://okdata.online/zh/apis/tiktok/videos/comments/list/) `tiktok.videos.comments.list`：$0.002/次 · 每页约 50 条评论
- [TikTok 视频搜索](https://okdata.online/zh/apis/tiktok/videos/search/) `tiktok.videos.search`：$0.002/次 · 每页约 30 条视频

更新于 2026-11-11
