# 怎么用 API 拿到某个 TikTok 话题标签下的视频？

> 这里没有 TikTok 话题页接口，做法是把标签当关键词搜，再留下真正带这个标签的视频。效果如何、多少钱、什么时候该换别的办法。

网页版：https://okdata.online/zh/answers/tiktok-hashtag-videos-api/

**简短回答：**接口目录里没有话题页，所以用 TikTok 视频搜索（/v1/tiktok/videos/search）把标签当关键词搜，只保留 hashtags 列表里含这个标签的视频。每页约 30 条，$0.002；拿 300 条要 10 次调用，共 $0.02。

一家咖啡连锁在海外发起了 #matchamonday 活动，想看看大家用这个标签发了什么：谁参与了，哪些视频点赞高，文案里说了些什么。在 TikTok 上点开话题页往下刷就行。用 API 的话，这里没法直接取那个页面，能做的是搜标签再过滤。对大多数活动复盘来说，这样拿到的正好是最重要的那批，也就是 TikTok 排在前面的视频。

## 具体做法

1. 用 [TikTok 视频搜索](/zh/apis/tiktok/videos/search/)搜标签文字，按普通词来写：`matchamonday` 或 `matcha monday`。
2. 每条视频都带 `hashtags` 列表。转成小写后比对，只留下列表里有这个标签的。
3. 用 `page.next_cursor` 往下翻，翻到基本找不到新的匹配就停。
4. 想先看头部内容，用 `sort=most_liked`。

```python
import os, requests

URL = "https://api.okdata.online/v1/tiktok/videos/search"
H = {"Authorization": f"Bearer {os.environ['OKDATA_API_KEY']}"}
TAG = "matchamonday"

found, cursor = {}, None
for _ in range(10):  # 最多 10 页，约 300 条
    params = {"query": TAG, "sort": "most_liked", **({"cursor": cursor} if cursor else {})}
    body = requests.get(URL, headers=H, params=params, timeout=60).json()
    if body["code"] != "ok":
        raise RuntimeError(f"{body['code']}: {body['message']}")
    for v in body["data"]["items"]:
        if TAG in [h.lower() for h in (v["hashtags"] or [])]:
            found[v["id"]] = (v["author"]["username"], v["metrics"]["likes"], v["url"])
    if not body["page"]["has_more"]:
        break
    cursor = body["page"]["next_cursor"]

print(len(found), "条视频带有", "#" + TAG)
```

## 费用

| 深度 | 调用次数 | 费用 |
|---|---|---|
| 第一页 | 1 | $0.002 |
| 约 300 条 | 10 | $0.02 |
| 1,000 条 | 34 | $0.068 |

每翻一页都计费，包括被过滤掉的视频。标签越独特，浪费越少；#fyp 这种泛标签，一页里大部分都会被丢掉。

## 这个办法的短板

- 拿到的是搜索结果，按相关度或点赞排序。和话题页有大量重合，但不是同一份列表，更不是带过这个标签的全部视频。
- 话题页上显示的总播放量，这里拿不到。
- 没有时间筛选，想看最新发布的，自己按 `published_at` 排序。
- 体量很大、持续很久的标签，你看到的是头部，长尾部分覆盖不到。

## 什么时候换别的办法

- **TikTok Research API**：可以按话题名加日期区间查询，免费，但只对通过审核的非营利学术研究者开放。
- **TikTok Creative Center**：面向广告主，按地区展示正在上升的标签，不用写代码。
- **TikTokApi 的话题功能**：确实有，不过它的 issue 区里不少人反映经常拿不到结果。

想按周观察哪些话题在涨、哪些在退，可以看[趋势研究方案](/zh/solutions/trend-research/)。

## 用到的接口

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

更新于 2026-11-12
