分享到微信

当前解读页的微信分享二维码

用微信扫一扫打开,点击右上角「···」分享给朋友或朋友圈。

手机上可截屏后,在微信扫一扫中从相册识别二维码。

Pluviobyte/douyin-comments

数据

通过已登录 Chrome 会话,抓取抖音单条视频完整评论区的 Agent Skill。

204
56
JavaScript
今天创建

这是一个 Agent Skill,用于抓取抖音单条视频的完整评论区:一级评论、全部楼中楼回复、视频详情,并可选下载视频,最终生成按点赞排序的 Markdown 全文和原始 JSON。它适合已具备 Claude Code 与 Chrome 扩展、且有已登录抖音 Chrome 会话,想以个人研究或内容参考为目的获取评论数据、又不想使用付费接口的用户。

工作机制

抖音 Web 评论接口需要 a_bogus、msToken、uifid 等约 30 多个风控与公共参数。该 skill 不自行拼接,而是复用页面真实请求:先由 page_hook.js 拦截页面首次评论请求,记录 URL 与请求头作为模板;主路线 page_fetch.js 在页面 XHR 内重发模板,只替换 aweme_id、cursor、comment_id,签名由页面 SDK 补齐;兜底路线 page_ui_expand.js 逐个点击“展开 N 条回复”,由页面自己发请求,脚本只截获响应,速度较慢但不易触发风控。recv.py 在本机接收页面 POST 的每页响应并落盘,build_report.py 再去重合并、逐楼核对回复数是否抓全,生成报告完整 README。

请求节奏为每两次间隔 2~4 秒,每 15 次额外停 8~15 秒。

依赖与安装

运行需要 Claude Code,并连接 Claude in Chrome 浏览器扩展(在 Claude Code 中执行 /chrome);使用已登录抖音的 Chrome;以及 Python 3(仅标准库)和 curl。安装方式是把仓库克隆到 ~/.claude/skills/douyin-comments 或项目的 .claude/skills/ 下;若目标目录已存在,应先检查内容而非直接覆盖安装说明。

随后在 Claude Code 中提供抖音链接并要求抓评论。支持 douyin.com/video/<id>、带 modal_id=<id> 的主页链接和 v.douyin.com 短链。产出默认写到 .internal/抖音评论/<aweme_id>/,包含模板与每页原始响应、去重后的一级评论和楼中楼 JSON、回复缩进在所属评论下的 评论全文.md,以及可选视频文件。完整流程见 SKILL.md。

实测结果与边界

作者报告了两次运行:7 分钟视频抓到一级 83 条加回复 112 条,共 195 条,与视频显示评论数一致,35 次请求耗时 138 秒;46 分钟教程抓到 77 加 58,共 135 条,与显示数一致,63 次请求耗时 252 秒,两次均未出现验证码README。第一条结果还与手动逐个点开回复抓取的结果逐条比对、完全一致,手动方式约用 6 分钟。

关键限制:skill 不代点验证码,出现验证码会停下,需在 Chrome 中手动完成后继续;只处理单条视频,不批量采集博主全部作品,也不支持小红书和 B 站;被删除、被折叠或仅作者可见的评论接口不会返回,所以抓到总数可能略少于视频显示数;单个楼超过 20 条回复时的翻页、上千条评论的视频尚未实测。作者将用途限定为个人研究和内容参考,并要求遵守抖音用户协议、控制频率、不要用于批量采集或商业分发。仓库未声明许可证仓库。

本文由 AI 根据项目 README 生成,更新于 2026年10月30日,以项目官方文档为准。