This duck helps you bycategory + datepull the Douyin daily likes TOP list—see at a glance which work in this niche got the most likes that day and which account it came from, and conveniently lock onto benchmarkable viral hits.
Data goes through doubaoya.com one line, authentication uses your own token (environment variable
DOUBAOYA_API_KEY, in the formdyh_…)。
Get the key (token)
- Open doubaoya.com
- Log in
- Go to Token Center
- Generate Token(in the form
dyh_…)
export DOUBAOYA_API_KEY="dyh_你的口令"
Iron rule: the token must never be printed, never written to a file, never echoed back to the user. The script itself also never outputs the token. All requests are sent only to doubaoya.com。
Run Script
Zero dependencies, standard library is enough (Python 3).
# 默认:美食分类,昨天
python3 "$SKILL_PATH/scripts/fetch_daily_hot.py"
# 指定分类 + 日期区间
python3 "$SKILL_PATH/scripts/fetch_daily_hot.py" --type 美食 --start-time 2026-06-23 --end-time 2026-06-23
| Parameter | Description | Default |
|---|---|---|
--type |
Content Category | 美食 |
--start-time |
Start Date YYYY-MM-DD |
Yesterday |
--end-time |
End Date YYYY-MM-DD |
Yesterday |
The script prints the data from the success envelope to stdout as JSON.Run the script only once each time, and read the full stdout.
Workflow (3 steps)
- Set category + date: defaults to Food and yesterday (today's data is usually not yet settled).
- Call the script to get data: the list is in
data.items, each item containstitle(title),accountName(account name),category(category),workUrl(work link). - Lay out the list + give insights: lay it out as a Markdown table sorted by likes, and after the table add one sentence in this duck's voice—what kind of content got likes in this niche that day, which accounts are mass-producing viral hits, and whether it can be transferred to your own account.
| Rank | Title | Account | Link |
|---|---|---|---|
| 1 | … | … | … |
Read fields defensively (leave blank if missing).
API Contract
POST https://doubaoya.com/api/apis/douyin/douyin-likes-rank/call- Auth header:
Authorization: Bearer $DOUBAOYA_API_KEY - Request body:
{ "type": "美食", "startTime": "2026-06-23", "endTime": "2026-06-23" }startTime/endTimePlease passa real, relatively recent date(the most recent date in the local region), do not make up or fill in a future date; an empty result usually means that date window has no settled data yet, so move back one day and try again.
- Return envelope:
{ "success": true, "requestId": "...", "data": { "items": [ { "title": "...", "accountName": "...", "category": "...", "workUrl": "..." } ] }, "error": null } - First check
success: only readtrueif it isdata; otherwise readerror.code/error.message。
Error Code
When the script fails, it prints [error] CODE: message to stderr and exits with code 1.
| HTTP | code | Meaning | Handling |
|---|---|---|---|
| 401 | MISSING_API_KEY / UNAUTHORIZED |
No token provided or token invalid | Check DOUBAOYA_API_KEY, go to the Token Center to regenerate |
| 400 | VALIDATION_ERROR |
Invalid parameter | Fix --type / --start-time / --end-time and retry |
| 402 | INSUFFICIENT_CREDITS |
Insufficient quota | Go to doubaoya.com to top up/renew quota |
| 502 | PROVIDER_FAILED |
Temporary upstream failure (Automatically refunded) | Safe to retry |
Directory structure
douyin-daily-hot/
├── SKILL.md # 本文件
└── scripts/
└── fetch_daily_hot.py # 零依赖脚本(urllib),调用 doubaoya.com
FAQ
Q: Prompt says missing DOUBAOYA_API_KEY?
A: First export DOUBAOYA_API_KEY="dyh_…"(Go to doubaoya.com → Log in → Token Center → Generate token).
Q: Error 502 PROVIDER_FAILED?
A: Temporary upstream fluctuation; the system has automatically refunded; just rerun directly.