如何用两步把 TikTok 全部评论(含回复)导成 Excel?TikTokCommentScraper 上手指南
如何用两步把 TikTok 全部评论含回复导成 ExcelTikTokCommentScraper 上手指南【免费下载链接】TikTokCommentScraper项目地址: https://gitcode.com/gh_mirrors/ti/TikTokCommentScraperTikTokCommentScraper 是一个把 TikTok 视频评论区完整导出为 Excel 的开源小工具一段 JavaScript 在浏览器控制台里替你滚动页面、展开回复一段 Python 脚本把剪贴板里的 CSV 转成 xlsx。它不抓包、不伪装、不需要装插件几分钟就能跑通。这篇文章从一次对不上账的统计事故说起讲清它的取数思路、你能拿到的字段、完整实操步骤以及那些 README 没写明的边界。一次对不上账的评论统计750 与 740 之间消失的评论去哪了去年帮朋友统计一条抽奖视频的评论数。我手动往下滚了快二十分钟从 TikTok 界面看到 750 条可等我真正把所有楼层滚到底数来数去只有 740 条左右。当时我以为自己漏滚了某一段又来回翻了两遍结论不变。后来用 TikTokCommentScraper 把评论区完整读了一遍导出的文件里清清楚楚写着两行对照TikTok 宣称的总数和实际渲染出来的总数差值就摆在那里。这件事给我两个启发。第一显示 750 条往往只是平台的一个概数真实的渲染过程会漏掉零星几条这不是脚本的 bug是平台的常态。第二靠眼睛和手指去核对几百上千条评论本身就是个伪命题——你需要的不是更快的滚动而是把加载、展开、记录这件事交给程序。我试过的三种笨办法为何都不行在遇到这个工具之前我先后走过三条弯路抓接口TikTok 的评论接口带着签名和时间戳校验直接构造请求要么拿不到数据要么很快被风控。对只想统计一次抽奖的我来说逆向成本高得离谱。无头浏览器框架写一套 Playwright 脚本确实能自动滚动但选择器要自己摸、页面改版要跟着修光是把环境跑起来就花了一个晚上。录屏加 OCR识别准确率不稳定中文昵称和 emoji 混在一起时更是重灾区导出的数据还要人工校对等于没导。TikTokCommentScraper 的价值恰恰在于它绕开了这三条路只做了一件最简单的事让你自己打开页面剩下的交给浏览器。换个角度让浏览器自己把评论区读完不伪装、不抓包控制台取数的安全边界这个工具的思路非常朴素你已经在浏览器里登录了 TikTok也看得到评论区那么让一段 JavaScript 替你把滚动页面、点击展开、读取文本这些动作重复执行完最后把结果整理成 CSV 放进剪贴板。全程零网络请求不碰接口不伪造请求头也就谈不上反爬——它只是在模拟一个真实用户的浏览行为。整个项目只有两个依赖Python 侧的pyperclip剪贴板和openpyxlExcel 写入全部写在requirements.txt里。Windows 用户甚至不用装 Python仓库里内置了一个精简到约 7MB 的python38/虚拟环境。两级评论的完整捕获滚动加载 自动点开 View repliesTikTok 评论区是两级结构一级评论下挂着若干条回复。脚本分两轮处理第一轮通过滚动触发评论懒加载把一级评论全部逼出来第二轮专门去找标着 View replies 的按钮逐个点击把二级回复也展开。注意它的选择器里特意只匹配 View 而不是 Hide避免把已经展开的收起按钮再点一遍。为什么选 XPath 而不是 querySelector源码里用 XPath 定位元素注释写得直白——more reliable than querySelector。TikTok 的 class 名是动态生成的但往往带着稳定的片段比如评论容器DivCommentListContainer、回复容器DivReplyContainer。XPath 的优势在于能精确表达某个 class 片段 父子/兄弟关系比如帖子描述就用preceding-sibling来定位这些用 CSS 选择器写起来反而别扭。脚本内部的三幕剧滚动、展开、拼装src/ScrapeTikTokComments.js的核心逻辑可以拆成三幕理解了这三幕你也就知道它会在什么时候停下来。第一幕滚动到末尾直到连续 15 次没有新评论脚本定位到评论区最后一条评论调用scrollIntoView(false)等 300 毫秒再数一遍评论总数。如果数量变多了就把无新内容计数重置如果连续 15 次滚动都没等到新评论就认定加载结束。作者还处理了一个真实坑直接访问链接时页面顶部会先滚出推荐视频列表导致评论列表不动所以它会额外把评论容器本身也scrollIntoView一次确保滚动发生在正确的位置。第二幕点开所有 View replies直到连续 5 轮找不到更多这一轮遍历所有 View replies 按钮并点击每轮间隔 500 毫秒。只要这一轮还能找到按钮缓冲计数就重置连续 5 轮一个按钮都找不到说明回复全部展开了。评论区超过两级的深层嵌套它并不处理但对绝大多数视频来说两级已经够用。第三幕字段提取、CSV 转义、一次复制进剪贴板所有评论渲染完成后脚本逐条读取昵称、账号、正文、时间、点赞数、头像链接等字段用quoteString对内容做 CSV 转义把正文里的替换成再把帖子元信息和每行评论拼接成一个大字符串通过with({ copy })注入的剪贴板 API 一次性复制出去。控制台里出现CSV copied to clipboard!就说明浏览器这边的活儿干完了。导出的 Excel 里到底有什么每条评论的 11 个字段Python 脚本src/ScrapeTikTokComments.py把剪贴板里的 CSV 写入临时文件、清洗掉 Windows 的\r回车符再用openpyxl逐行转成 xlsx。每一行评论包含这些列字段含义Comment Number (ID)评论行号Nickname用户昵称User 用户账号User URL用户主页链接Comment Text评论正文Time评论时间统一为日-月-年格式Likes点赞数Profile Picture URL头像图片链接Is 2nd Level Comment是否为二级回复User Replied To该回复指向的用户昵称Number of Replies这条一级评论下有几条回复帖子头部的那一摞元信息表格之前文件前几行还记录了整条视频的上下文导出时间、帖子链接、作者昵称与主页、发布时间、点赞数、分享数、描述以及两行最关键的对照——实际渲染出的一级/二级评论数和 TikTok 自己显示的总数。有了这个差值你就能判断这次采集漏了多少而不是盲目相信导出结果。评论与回复的层级如何还原这是我最喜欢的一个细节。脚本遍历评论时通过判断当前节点是否属于回复容器来标记层级遇到一级评论就向后偷看连续几条回复的数量填进Number of Replies遇到二级回复就回溯记录它回复的是哪个用户。于是层级关系不用靠缩进猜三列数据就把整棵对话树还原了。五分钟实操从克隆仓库到拿到 xlsx准备清单Chromium 内核、登录、仓库你需要三样东西一个 Chromium 内核的浏览器Chrome、Edge、Brave 都行、一个已登录的 TikTok 账号、一份仓库代码。克隆地址是https://gitcode.com/gh_mirrors/ti/TikTokCommentScraperLinux 用户克隆后执行pip install -r requirements.txt装好pyperclip和openpyxlWindows 用户什么都不用装仓库自带的虚拟环境开箱即用。把 JavaScript 送进开发者控制台打开目标视频页面确认评论区能正常手动滚动按 F12 进入开发者控制台。Windows 下直接双击根目录的Copy JavaScript for Developer Console.cmd脚本会自动把src/ScrapeTikTokComments.js的内容复制到剪贴板非 Windows 系统运行python src/CopyJavascript.py效果相同。回到控制台粘贴、回车接下来就是等。剪贴板里的 CSV 如何变成 Excel看到CSV copied to clipboard!之后回到项目目录双击Extract Comments from Clipboard.cmd或运行python src/ScrapeTikTokComments.py脚本会读取剪贴板、生成一个带时间戳的Comments_时间戳.xlsx然后自动删除中间产生的临时 CSV。整个流程两条命令、两次粘贴前后五分钟左右。边界、调参与安全那些注定缺席的评论必须说清楚这工具拿不到全部评论原因是 TikTok 自己就渲染不全。README 里记录了一次 3000 条评论的实测最终有 64 条始终没被加载出来占比约 2%作者认为大部分场景可以忽略。我在开头遇到的 750/740 也是同类现象。所以拿到文件后请优先看头部元信息里的 Difference 字段心里有个数。为什么绝不该盲贴控制台代码这是 README 里警告语气最重的一段我也深表认同绝不盲目往开发者控制台粘贴来路不明的代码。粘贴并执行一段 JS 等于把当前登录会话完全交给对方。TikTokCommentScraper 的优势之一是代码全程透明、零网络请求剪贴板是唯一的敏感操作——但这份信任只对你亲自核对过的源码成立。运行前花两分钟翻一遍src/ScrapeTikTokComments.js这是对自己账号负责。评论多、网络慢时怎么调如果你发现滚动循环提前退出、评论加载到一半就停了多半是网络太慢导致 300 毫秒等待不够。源码第一幕开头有个loadingCommentsBuffer 30注释里写明如果加载太慢导致循环提前中断就调大这个缓冲值把等待时间从 300 毫秒改到 800 毫秒通常也能改善。作者在测试里提到3000 条评论的规模在中等配置笔记本上会开始有点卡顿这个量级基本是单次采集的舒适上限更大的数据量建议拆成多次。拿到数据之后项目地图与分析路径核心文件索引整套工具只有四个入口全部在项目内按需查阅浏览器采集脚本src/ScrapeTikTokComments.js数据转 Excel 脚本src/ScrapeTikTokComments.py复制 JS 到剪贴板src/CopyJavascript.pyWindows 双击入口Copy JavaScript for Developer Console.cmd与Extract Comments from Clipboard.cmd从 xlsx 出发的分析思路拿到 Excel 后一个多小时就能得到几类结论用数据透视表统计一天内评论的时段分布找出互动高峰对Comment Text做关键词频次统计定位高频话题按Likes排序筛出高赞评论观察什么样的内容更容易引发共鸣再结合Is 2nd Level Comment看回复占比判断讨论氛围是单方面表态还是双向对话。二次开发与合规底线想扩展也很容易把 Python 脚本里的输出换成 JSON 或写进数据库改一行就够想批量处理多个视频把控制台取数这一段包成一个可重复的流程即可。但请记住合规的底线——只采集公开可见的评论尊重用户隐私遵守平台服务条款。数据工具的边界最终是由使用者划定的。一句话收尾下次再有人问你要某个视频的全部评论不用熬夜滚鼠标把这段 JavaScript 交给浏览器然后去泡杯茶回来 Excel 就在那了。☕【免费下载链接】TikTokCommentScraper项目地址: https://gitcode.com/gh_mirrors/ti/TikTokCommentScraper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

如何用Steam挂刀行情站搭建一套24小时自动比价的多平台饰品行情监控系统

如何用Steam挂刀行情站搭建一套24小时自动比价的多平台饰品行情监控系统

如何用Steam挂刀行情站搭建一套24小时自动比价的多平台饰品行情监控系统 【免费下载链接】SteamTradingSiteTracker Steam 挂刀行情站 —— 24小时更新的 BUFF & IGXE & C5 & UUYP & ECO 挂刀比例数据 | Track cheap Steam Community Market items on buff.163…

2026/8/18 18:18:45 阅读更多 →
随时随地畅玩 3A 大作:Sunshine 游戏串流服务器从零部署全攻略

随时随地畅玩 3A 大作:Sunshine 游戏串流服务器从零部署全攻略

随时随地畅玩 3A 大作:Sunshine 游戏串流服务器从零部署全攻略 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 书房里那台性能强劲的电脑,白天用来办公&…

2026/8/18 18:18:45 阅读更多 →
本地音频转录终极指南:5 分钟用 Buzz 把录音变成文字

本地音频转录终极指南:5 分钟用 Buzz 把录音变成文字

本地音频转录终极指南:5 分钟用 Buzz 把录音变成文字 【免费下载链接】buzz Buzz transcribes and translates audio offline on your personal computer. Powered by OpenAIs Whisper. 项目地址: https://gitcode.com/GitHub_Trending/buz/buzz 你手机里是不…

2026/8/18 18:18:45 阅读更多 →

最新新闻

castv2-client 与官方 Cast SDK 终极对比:如何选择你的 Chromecast 开发方案

castv2-client 与官方 Cast SDK 终极对比:如何选择你的 Chromecast 开发方案

castv2-client 与官方 Cast SDK 终极对比:如何选择你的 Chromecast 开发方案 【免费下载链接】node-castv2-client A Chromecast client based on the new (CASTV2) protocol 项目地址: https://gitcode.com/gh_mirrors/no/node-castv2-client 无论你是想在 …

2026/8/18 18:49:06 阅读更多 →
一劳永逸的免费听歌方案:零基础保姆级开源音源配置指南,5步让洛雪音乐全平台无损

一劳永逸的免费听歌方案:零基础保姆级开源音源配置指南,5步让洛雪音乐全平台无损

一劳永逸的免费听歌方案:零基础保姆级开源音源配置指南,5步让洛雪音乐全平台无损 【免费下载链接】lxmusic- lxmusic(洛雪音乐)全网最新最全音源 项目地址: https://gitcode.com/gh_mirrors/lx/lxmusic- 深夜十一点,朋友发来一条消息&a…

2026/8/18 18:49:06 阅读更多 →
如何用 Jupyter Enterprise Gateway 把 JupyterLab 连接到集群?客户端配置完整指南

如何用 Jupyter Enterprise Gateway 把 JupyterLab 连接到集群?客户端配置完整指南

如何用 Jupyter Enterprise Gateway 把 JupyterLab 连接到集群?客户端配置完整指南 【免费下载链接】enterprise_gateway A lightweight, multi-tenant, scalable and secure gateway that enables Jupyter Notebooks to share resources across distributed cluste…

2026/8/18 18:49:06 阅读更多 →
如何用Docker 5分钟跑通Pulsar实时分析管道:realtime-analytics快速开始保姆级教程

如何用Docker 5分钟跑通Pulsar实时分析管道:realtime-analytics快速开始保姆级教程

如何用Docker 5分钟跑通Pulsar实时分析管道:realtime-analytics快速开始保姆级教程 【免费下载链接】realtime-analytics Realtime analytics, this includes the core components of Pulsar pipeline. 项目地址: https://gitcode.com/gh_mirrors/re/realtime-ana…

2026/8/18 18:49:06 阅读更多 →
告别格式枷锁:ncmdumpGUI一键批量解密,5分钟让网易云NCM文件在所有设备自由播放

告别格式枷锁:ncmdumpGUI一键批量解密,5分钟让网易云NCM文件在所有设备自由播放

告别格式枷锁:ncmdumpGUI一键批量解密,5分钟让网易云NCM文件在所有设备自由播放 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你有没…

2026/8/18 18:49:06 阅读更多 →
SumatraPDF 页面突然变黑?颜色反转的开关、真相与避坑全攻略

SumatraPDF 页面突然变黑?颜色反转的开关、真相与避坑全攻略

SumatraPDF 页面突然变黑?颜色反转的开关、真相与避坑全攻略 【免费下载链接】sumatrapdf SumatraPDF reader 项目地址: https://gitcode.com/gh_mirrors/su/sumatrapdf 深夜加班赶报告,SumatraPDF 里刚打开一份 PDF,屏幕却瞬间变成黑…

2026/8/18 18:48:05 阅读更多 →

日新闻

告别逐帧截图:用 extract-video-ppt 快速提取视频中的 PPT 并一键导出 PDF

告别逐帧截图:用 extract-video-ppt 快速提取视频中的 PPT 并一键导出 PDF

告别逐帧截图:用 extract-video-ppt 快速提取视频中的 PPT 并一键导出 PDF 【免费下载链接】extract-video-ppt extract the ppt in the video 项目地址: https://gitcode.com/gh_mirrors/ex/extract-video-ppt 如果你还停留在"看网课 不停暂停 截图 …

2026/8/18 0:00:57 阅读更多 →
思源宋体TTF一站式上手:7个字重免费商用,从下载到上线的完整走查

思源宋体TTF一站式上手:7个字重免费商用,从下载到上线的完整走查

思源宋体TTF一站式上手:7个字重免费商用,从下载到上线的完整走查 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 你是不是也经历过这种时刻:设计稿里…

2026/8/18 0:00:58 阅读更多 →
华硕笔记本控制权回收指南:GHelper 如何用一个 10MB 文件替代 Armoury Crate

华硕笔记本控制权回收指南:GHelper 如何用一个 10MB 文件替代 Armoury Crate

华硕笔记本控制权回收指南:GHelper 如何用一个 10MB 文件替代 Armoury Crate 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, …

2026/8/18 0:00:59 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/18 9:15:35 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/18 9:06:28 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/18 9:04:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/17 18:54:37 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/17 18:55:16 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/17 18:55:55 阅读更多 →