点收藏的时候,通常觉得以后还能找到。真要找回那段教程,可能只记得作者的半个名字,或者视频里提到过的一个词。记录还在,只是翻起来有些费劲。
DouyinDataReview 是我正在维护的一个开源桌面项目。它会把本人账号能读取到的观看历史、喜欢、收藏和好友聊天记录整理到电脑上,再提供搜索、导出和报告功能。最基础的用法,就是给这些零散记录留一份本地副本。
下面从找回一段视频、做一次备份和回看一份报告说起,再聊聊聊天、创作者数据,以及实现时需要面对的一些限制。
文中截图均使用合成示例数据,展示的是可切换的「内容年志」风格。默认工作台是白底细线的极简界面。
想找回一段收藏过的视频
比如,之前收藏过一段剪辑教程,现在想重新看里面的转场做法,却不记得完整标题。
把记录读入本地后,可以在内容库里按标题、作者、话题或音乐查找。观看历史、喜欢和收藏分开展示,找的范围可以小一些;搜到作品后,能在应用里播放、看评论,也能转发给好友。

内容库示例,封面与记录数量均为演示数据。
如果打算把视频作为长期参考,可以再下载一份。单条作品可以直接下载,多条视频支持勾选后打包成 ZIP,图文作品则可以保存其中的全部图片。
这里有一个容易混淆的地方:把记录导出成 JSON,保存的是作品资料和相关记录,视频文件还需要单独下载。即使本地留有记录,在线播放也仍然要看作品是否可访问。
备份哪些内容,最好能自己选
只想整理收藏的人,未必也想读取聊天。当前版本在导入登录凭据时,把「读取视频」和「读取聊天」分开了,可以只选一项,也可以同时开启。
选择视频后,会完整读取一次当前可访问的观看历史、喜欢和收藏,后续可以增量补读;选择聊天,则整理聊天历史并接收新消息。不同账号分别保存会话和记录,选择也会按账号保留。需要改动读取范围时,目前要重新导入凭据。
导出时还可以再选一次范围:观看历史、喜欢、收藏、聊天分别勾选。比如只给收藏做备份,就只导出收藏,不用把其他资料一并带走。导出的 JSON 可以重新导入,应用也支持读取抖音官方个人信息下载中的 JSON / ZIP 档案。
为了接着积累新记录,桌面版可以留在托盘或菜单栏,每三小时补读一次,也能在设置中关闭自动补读。关窗口后应用仍可能在运行,完全退出需要从托盘或菜单栏操作。补读能否继续,还取决于登录凭据是否有效。
记录攒起来以后,可以看些什么
单条记录解决的是「找回来」,报告更适合把一段时间里的内容放在一起看:最近常看哪些作者,收藏里有哪些话题,哪些作品看过以后又点了喜欢。
持续报告会比较最近三十天与上一时段的情况,样本不足时扩大到九十天。时间分布、作者与话题排行、观看和收藏的交集等统计,都来自本机已经保存的数据。

持续报告示例,图表和数值不代表真实账号的使用情况。
年度回顾用另一种方式呈现同一批记录。现在有「内容年志」「档案馆」「海报」三种风格,可以沿着章节读下去,也可以像翻档案一样看记录和图表。回顾页面能够导出成独立 HTML,或者保存为 1080 × 1440 的 PNG 分享图。
这些统计在本地计算,不需要外部 AI。记录里有作者、话题、音乐等字段,才能据此整理;缺少真实观看日期时,也不会拿采集日期来代替。
这决定了报告的一个局限:它只能描述已经留存的部分。假如从十月才开始采集,而接口没有返回更早的记录,生成的年度回顾也就无法覆盖一整年。看图表时,先看数据覆盖范围,会比直接解读某个比例更有意义。
聊天记录也有各自的保存范围
聊天页可以接收新消息、回复好友和群聊。对于常用抖音互相分享视频的人,它提供了一个在电脑上接着阅读和回复的地方。

联系人和消息均为演示数据。
目前,好友聊天记录可以保存到本地,群聊则在打开时从平台接口读取消息,群聊正文不写入备份。因此,能在界面里读到的内容,并不都包含在导出文件里。
续火花看板会显示平台返回的官方火花天数,也可以勾选对象后主动发送一轮消息。发送需要自己点击开始,没有定时自动发送;发出消息后,火花是否增长仍以抖音的状态为准。
如果自己也在发布作品
创作者中心关心的是另一组问题:作品最近表现如何,流量来自哪里,观众有什么特征。
这里可以查看本人账号的数据总览、作品数据、粉丝画像,以及单条作品的流量、观众和评论分析。数据来自抖音创作者中心接口,工作台只负责读取和展示,可见字段受当前账号权限影响。

账号、作品和各项指标均为演示数据。
需要找参考内容时,也可以搜索用户与作品,查看热点榜、抖音指数中的达人趋势和粉丝画像。点赞、收藏、关注、评论等操作由用户主动触发。应用还支持观看关注列表中的直播、接收和调整弹幕;直播部分目前只提供观看功能。
视频解析是一个可选功能。它需要自行配置支持视频输入的 OpenAI 兼容接口、模型和 API Key,用来拆解选题、开头、内容结构、画面与声音,结果会保存在本地解析库里。
这部分需要把数据去向说明白:主动解析时,选中的视频、公开作品资料和提示词会发给所配置的 AI 服务,抖音登录 Cookie 和整份个人记录不会一起发送。模型给出的拆解也需要对照原视频判断,不能直接当作创作效果的结论。
本地副本是怎样留下来的
实现上,工作台使用 React / React Native / Expo,Node.js 负责本地采集服务,Electron 负责桌面窗口、托盘和后台补读。
第一次连接时,需要本人在支持的浏览器里登录抖音,授权远程调试,再核对账号、确认导入凭据。导入完成后应用会断开调试连接,后续通过 HTTP 请求读取记录,通过 WebSocket 接收聊天等消息。凭据有效期间,可以关闭浏览器。
采集到的记录会经过归一化和合并,再按账号保存为 JSON。工作台从本地服务取数据,完成搜索、展示与统计。观看历史、喜欢和收藏通过接口分页读取,这个过程不依赖一直打开网页向下滚动。
不过,本地保存并不能消除对平台的依赖。DouyinDataReview 是非官方项目,使用的接口没有稳定性承诺,可能因平台调整或账号风控而失效。它也无法保证找回全部历史记录。登录凭据和聊天备份留在自己的设备上,相应的保管责任也留在自己手里。
目前提供 Windows x64 和 macOS Apple Silicon 桌面版。浏览器凭据导入支持 Chrome 144+、提供远程调试开关的 Edge,以及 macOS Comet,首次连接需要本人完成授权。
对我来说,这个项目最值得继续打磨的,还是查找和留存这些基础环节:一段看过的内容,过些时候还能找到;一次备份,能清楚知道里面保存了什么。其他统计和报告,也都建立在这些记录之上。
项目采用 MIT 许可,源码和使用说明在 DouyinDataReview。
