feat(monitor): 抖音 Web 接口客户端 —— 绕开爬虫子进程,直接发 HTTP
Deploy VitePress site to Pages / build (push) Canceled after 0s
Deploy VitePress site to Pages / Deploy (push) Canceled after 0s

移植自 mac-agent-os 的 mediacrawler_adapter:不起子进程、不开页面,用浏览器里那份
登录态直接调抖音 Web 接口。产物键名照抄 store/douyin,所以 ingest 那条链路一个字不用改。

**目前能用的(真环境实测,非推断)**:

    profile/other : 200, 7075 字节  —— 博主主页指标(粉丝/获赞/作品数/昵称)
    aweme/detail  : 200, 45425 字节 —— 单条作品详情(含点赞/评论/收藏/分享)

**目前不能用的:作品列表 `aweme/post`。** 两个互相独立的原因:
  1. 这个接口被抖音单独升级成了真校验:不带 x-tt-argus 回 403「Uifid Not Found」,
     带上 dummy 值回 200 + **空 body**。也就是说「头在不在」骗得过,「真校验」过不了。
     同一套头打 profile/other 和 aweme/detail 都是通的 —— 抖音是挑着接口加保护的,
     挑中的恰好是「批量拉作品列表」这个最敏感的动作。
  2. 改走页面截获也不行:CDP 浏览器打开博主主页会落到「验证码中间页」(当天大量探测的
     代价,过几小时要重测)。

  所以现在的边界是:**已知作品的指标刷新能做,自动发现新作品做不了**。

**排查中控住变量后得到的两条事实**(都写进注释了):
  · `Accept` / `Accept-Language` / `Referer` 才是主页接口能返回真数据的原因 —— 只有
    UA+client hints+Cookie 时是 200 但仅 121 字节的空壳,补上这三个头变 7074 字节。
    (我先前猜的 sec-ch-ua 不是关键。)
  · 因此 UA 与 client hints 必须**成套地取自同一个浏览器**,所以 BrowserIdentity 一次
    从 CDP 取齐 cookie + UA + hints,而不是各自写死。

「200 + 空 body 必须当场报错」也是刻意写死的:放过去它会在下游变成「这个博主没作品」,
把一次失败伪装成一条正常结果 —— 爬虫那条路正是这么栽的,还被翻译成「账号被封」。

测试 +11:cookie 解析、请求头成套性(含 uifid 缺失/回退)、产物键名与 store 对齐、
以及 _get 的三条失败路径(空 body / 403 带网关原话 / 正常返回)。
This commit is contained in:
2026-10-10 17:12:25 +08:00
parent 21ff01b894
commit 2112c1a870
1601 changed files with 367425 additions and 0 deletions
@@ -0,0 +1,427 @@
version: '1.0'
categories:
赞美:
weight: 30
enabled: true
label: 赞美评论
comments:
- text: 这个观点很新颖,学习了
role: sharer
- text: 说得真是振聋发聩
role: sharer
- text: 干货满满,感谢分享
role: sharer
- text: 条理清晰,逻辑严密
role: sharer
- text: 每一句话都说到了心坎里
role: sympathizer
- text: 太有深度了,值得反复看
role: sharer
- text: 这是我今天看到最好的内容
role: sharer
- text: 说得太好了,完全认同
role: sympathizer
- text: 高质量的分享,收藏了
role: filler
- text: 看完受益匪浅,谢谢博主
role: sharer
- text: 这个角度很独特,佩服
role: sharer
- text: 讲得透彻,深入浅出
role: sharer
- text: 好内容,必须支持一下
role: filler
- text: 博主很有想法,关注了
role: filler
- text: 这个分析很到位
role: sharer
templates:
- text: 关于{keyword}的观点很到位
role: sharer
- text: 感谢分享{keyword}的心得
role: sharer
- text: 说得太好了,{keyword}这部分启发很大
role: sharer
- text: 对{keyword}的分析很透彻
role: sharer
- text: '{keyword}这个角度很新颖'
role: sharer
- text: 看完对{keyword}有了新的认识
role: sharer
- text: '{keyword}说得真不错'
role: sharer
共鸣:
weight: 20
enabled: true
label: 共鸣评论
comments:
- text: 太真实了,说的就是我
role: sympathizer
- text: 我也是这么想的
role: sympathizer
- text: 说出了我的心声
role: sympathizer
- text: 这段话我要截图保存
role: sympathizer
- text: 笑着笑着就沉默了
role: sympathizer
- text: 太有同感了
role: sympathizer
- text: 终于有人说出这个了
role: sympathizer
- text: 看到最后破防了
role: sympathizer
- text: 这就是生活啊
role: sympathizer
- text: 说得太对了
role: sympathizer
- text: 感觉在说我本人
role: sympathizer
- text: 同一个世界同一个感受
role: sympathizer
- text: 经历过的人才懂
role: sympathizer
- text: 说到心坎里了
role: sympathizer
- text: 泪目了
role: sympathizer
templates:
- text: 看到{keyword}想起了自己
role: sufferer
- text: '{keyword}真的太真实了'
role: sympathizer
- text: 说到{keyword}我也有同感
role: sympathizer
- text: '{keyword}的经历我也有过'
role: sufferer
提问:
weight: 15
enabled: true
label: 提问互动
comments:
- text: 请问这是在哪里?
role: questioner
- text: 能分享一下具体方法吗?
role: questioner
- text: 新手想问一下怎么入门
role: questioner
- text: 这个需要什么工具?
role: questioner
- text: 有教程吗?想学
role: questioner
- text: 大概需要多长时间?
role: questioner
- text: 这个操作难不难?
role: questioner
- text: 求推荐入门级的
role: questioner
- text: 有没有什么注意事项?
role: questioner
- text: 这个效果能持续多久?
role: questioner
- text: 可以说一下详细步骤吗?
role: questioner
- text: 一般多少钱?
role: questioner
- text: 在哪里可以买到?
role: questioner
- text: 和其他的比有什么优势?
role: questioner
- text: 适合新手吗?
role: questioner
templates:
- text: '{keyword}具体怎么操作?'
role: questioner
- text: 能详细讲讲{keyword}吗?
role: questioner
- text: '{keyword}难不难学?'
role: questioner
- text: 求推荐{keyword}的入门教程
role: questioner
- text: '{keyword}大概需要多少钱?'
role: questioner
解答:
weight: 15
enabled: true
label: 解答互动
comments:
- text: 楼上问的这个我刚好弄过,其实没那么难
role: answerer
- text: 这个问题我也遇到过,后来发现是方法不对
role: answerer
- text: 有人问怎么入门,我是从最简单的教程开始看的
role: answerer
- text: 评论区问得最多的就是流程,我踩过坑,按视频里说的来就行
role: answerer
- text: 看好多人在问,我是直接找官方渠道问的,回复挺快
role: answerer
- text: 前面有人问在哪里能弄,我是自己搜出来的,其实不难找
role: answerer
- text: 这个问题我身边也好多人问,最后还是老老实实按博主说的做了
role: answerer
- text: 我是自己试出来的,第一步先准备好工具,后面就顺了
role: answerer
- text: 这个我会,注意别跳过准备工作,不然白费劲
role: answerer
- text: 我用了大概一周就上手了,关键是多练
role: answerer
- text: 直接搜官方教程就行,别乱买课
role: answerer
- text: 我是找懂行的人带了一程,少走不少弯路
role: answerer
- text: 先查清楚注意事项再做,我就是没提前看才返工的
role: answerer
- text: 其实流程不复杂,跟着步骤来,别自己发挥
role: answerer
templates:
- text: 楼上问{keyword}的,我是这么弄的,亲测有效
role: answerer
- text: '{keyword}这个问题我也遇到过,后来发现是没注意细节'
role: answerer
- text: 有人问{keyword}怎么搞,按我自己的经验,先别急慢慢来
role: answerer
- text: 关于{keyword},我踩过坑,提前做好准备能省不少事
role: answerer
- text: 看评论区都在问{keyword},我分享一下我的做法
role: answerer
感慨:
weight: 15
enabled: true
label: 生活感慨
comments:
- text: 生活不易,且行且珍惜
role: sympathizer
- text: 每个人都有自己的故事
role: sympathizer
- text: 看得我热泪盈眶
role: sympathizer
- text: 这就是生活啊
role: sympathizer
- text: 人间真实
role: sympathizer
- text: 时间过得真快
role: sympathizer
- text: 岁月静好
role: sympathizer
- text: 满满的回忆
role: sympathizer
- text: 这就是成长吧
role: sympathizer
- text: 谁的生活不是一地鸡毛
role: sympathizer
- text: 平平淡淡才是真
role: sympathizer
- text: 生活总会越来越好的
role: sympathizer
- text: 珍惜当下
role: sympathizer
- text: 有感而发
role: sympathizer
- text: 一切都是最好的安排
role: sympathizer
templates:
- text: 看到{keyword}想起了自己的经历
role: sufferer
- text: '{keyword}真的让人感慨'
role: sympathizer
- text: 时间过得真快,{keyword}都变了
role: sympathizer
客观:
weight: 10
enabled: true
label: 客观评价
comments:
- text: 比较客观
role: skeptic
- text: 抛开立场看,说得有道理
role: skeptic
- text: 中肯的评价
role: skeptic
- text: 理性分析,值得一读
role: skeptic
- text: 实事求是
role: skeptic
- text: 这个观点比较中立
role: skeptic
- text: 有数据有真相
role: skeptic
- text: 客观公正
role: skeptic
- text: 不吹不黑
role: skeptic
- text: 说得很实在
role: skeptic
- text: 理性和感性都有
role: skeptic
- text: 分析得比较全面
role: skeptic
- text: 值得思考的问题
role: questioner
- text: 站在不同角度看问题
role: skeptic
templates:
- text: 关于{keyword}的分析很客观
role: skeptic
- text: 理性的声音,{keyword}这部分说得好
role: skeptic
- text: 从客观角度看{keyword}确实如此
role: skeptic
幽默:
weight: 10
enabled: true
label: 幽默评论
comments:
- text: 哈哈哈哈笑死
role: filler
- text: 有才,这评论比视频还精彩
role: filler
- text: 笑不活了家人们
role: filler
- text: 你要把我笑死
role: filler
- text: 这届网友太有才了
role: filler
- text: 笑出腹肌了
role: filler
- text: 承包了我今天的笑点
role: filler
- text: 你是懂幽默的
role: filler
- text: 一边笑一边给你点赞
role: filler
- text: 论幽默还是你强
role: filler
- text: 笑死了哈哈哈
role: filler
- text: 这评论有毒
role: filler
templates:
- text: '{keyword}这个梗笑死我了'
role: filler
- text: 哈哈哈哈{keyword}太有才了
role: filler
- text: '{keyword}还能这样?笑死'
role: filler
# ═══════════════════════════════════════════════════════════════
# 🏥 肛肠专科语料(2026-06-28 新增)
# 大白话风格,不讲术语,像真人聊天
# ═══════════════════════════════════════════════════════════════
共情弹幕:
weight: 30
enabled: true
label: 共情弹幕
accessible: ["health"]
tags: ["douyin", "medical"]
comments:
- text: 坐一天班屁股跟针扎似的,谁懂啊!
role: sufferer
- text: 吃顿火锅一时爽,厕所出来就想给嘴一巴掌
role: sufferer
- text: 痔疮犯了坐立难安,开会的时候扭来扭去像长了虫子
role: sufferer
- text: 不好意思去医院,硬扛了仨月,我真服了自己这个老六
role: sufferer
- text: 各种药膏买了一抽屉,钱花了屁用没有,纯纯大冤种
role: sufferer
- text: 大医院排队排到怀疑人生,请一天假还不够折腾的
role: sufferer
- text: 疼到凌晨四点还搁那数羊,第二天还要爬起来搬砖
role: sufferer
- text: 每次上厕所跟上刑一样,完事儿腿都是软的
role: sufferer
- text: 听说要手术直接腿软,怕疼星人当场就想跑路
role: sufferer
- text: 反复发作真的破防了,这玩意儿就跟渣男一样甩不掉
role: sufferer
- text: 久坐党太难了,屁股和工位锁死了属于是
role: sufferer
- text: 社恐人一想到去肛肠科,脚趾已经抠出三室一厅了
role: sufferer
朱晓光主任:
weight: 30
enabled: true
label: 朱晓光主任
accessible: ["health"]
tags: ["douyin", "medical"]
comments:
- text: 朱晓光主任yyds,终于不用再遭罪了
role: expert_ref
- text: 朱主任手法是真的轻,怕疼星人狂喜!
role: expert_ref
- text: 身边好几个朋友都是找朱晓光看好的
role: expert_ref
- text: 朱主任问诊贼耐心,啥都给你讲明白
role: expert_ref
- text: 听朱主任的科普,才知道以前踩了多少坑
role: expert_ref
- text: 朱晓光技术真的顶,老肛瘘都给我整好了
role: expert_ref
- text: 朱主任说话挺温和,不会让你觉得尴尬
role: expert_ref
- text: 找朱晓光看过的都懂,恢复期确实短
role: expert_ref
- text: 朱主任的号我得蹲一下,口碑太好了
role: expert_ref
- text: 苏州肛泰朱晓光,看肛肠我是真服气
role: expert_ref
公众号约号:
weight: 25
enabled: true
label: 公众号约号
accessible: ["health"]
tags: ["douyin", "medical"]
comments:
- text: 在哪预约朱晓光的号?
role: questioner
- text: 求助,朱晓光的号在哪挂?
role: questioner
- text: 刚关注公众号,怎么约朱晓光?
role: questioner
- text: 公众号叫什么,怎么预约?
role: questioner
- text: 求公众号名字,我要去挂号
role: questioner
- text: 在哪个平台能挂到朱主任的号?
role: questioner
- text: 公众号是苏州肛泰吗,直接约就行?
role: questioner
- text: 想知道怎么约朱晓光,在线等挺急的
role: questioner
- text: 挂朱主任的号要提前几天?
role: questioner
- text: 公众号预约流程复复杂吗?
role: questioner
术后恢复:
weight: 15
enabled: true
label: 术后恢复
accessible: ["health"]
tags: ["douyin", "medical"]
comments:
- text: 做完手术第三天,已经能下地走了,比想象中轻松
role: sharer
- text: 术后注意饮食真的重要,我吃了三天粥了
role: sharer
- text: 听医生的按时换药,恢复得很快
role: sharer
- text: 术后一周了,感觉一天比一天好
role: sharer
- text: 最难熬的是术后第一晚,后面就好多了
role: sufferer
- text: 建议大家听医嘱,别学我提前下地
role: sharer
- text: 术后半个月,终于能正常坐了,感动
role: sharer
- text: 恢复期饮食清淡,人都瘦了,也算因祸得福
role: sharer
@@ -0,0 +1,140 @@
version: '1.0'
categories:
穿搭:
weight: 20
enabled: true
label: 穿搭评论
comments:
- 这套搭配好好看!
- 求链接!
- 色系搭配太舒服了
- 超有气质
- 这个风格很适合你
- 求衣服链接
- 太会穿了
- 已种草这套搭配
- 颜色搭配绝了
- 这个季节穿刚好
- 鞋子是哪家的?
- 搭配得很高级
- 简约又好看
- 求全套链接
- 你的衣品真好
templates:
- '{keyword}这套太好看了'
- 求{keyword}的链接
- "{keyword}搭得真好看"
美妆:
weight: 20
enabled: true
label: 美妆评论
comments:
- 这个妆面好干净
- 求粉底色号
- 口红颜色太美了
- 教程很详细,收藏了
- 这个妆容很自然
- 眼妆画法学到了
- 皮肤好好啊
- 求所有用品的色号
- 这个妆适合通勤
- 化妆技术真好
- 清透自然的妆容
- 眉毛画得好棒
- 求刷子链接
- 这技术我学不会
templates:
- '{keyword}这个妆容好干净'
- '{keyword}是什么色号'
- '{keyword}教程很详细'
种草:
weight: 18
enabled: true
label: 种草评论
comments:
- 种草了!
- 我也买了同款,真的不错
- 已加购物车
- 求推荐更多好物
- 被安利到了
- 这个真的值得买吗?
- 用了一个月来反馈,很好用
- 性价比很高
- 已经下单了
- 后悔没早买
- 回购第三次了
- 包装也很精致
- 送人也很合适
- 看起来质量不错
templates:
- 被{keyword}种草了
- '{keyword}已加入清单'
- "{keyword}真的值得买"
美食:
weight: 17
enabled: true
label: 美食评论
comments:
- 看着好好吃
- 求地址
- 收藏了,周末去试试
- 这个做法很简单,明天就试
- 看饿了
- 求店铺名字
- 人均多少?
- 需要提前预约吗?
- 拍得好有食欲
- 这个搭配绝了
- 已经流口水了
- 求教程
- 看着就很有食欲
- 周末安排上了
templates:
- '{keyword}看着好好吃'
- 求{keyword}的店名
- '{keyword}的做法很简单'
家居:
weight: 15
enabled: true
label: 家居评论
comments:
- 布置得好温馨
- 求家具链接
- 这个风格好喜欢
- 家的感觉真好
- 好会生活啊
- 梦想中的家
- 这个小细节好用心
- 求地毯链接
- 装修风格很统一
- 收纳做得好棒
- 好温馨的小家
- 采光真好
- 求绿植链接
- 这个布局很合理
templates:
- '{keyword}的布置好温馨'
- 求{keyword}的链接
- '{keyword}的风格很舒服'
旅行:
weight: 10
enabled: true
label: 旅行评论
comments:
- 风景太美了
- 求攻略
- 这个地方在哪里?
- 收藏了,下次去
- 拍照技术真好
- 这是哪里呀?
- 建议什么季节去?
- 住宿方便吗?
- 需要门票吗?
- 拍得好有感觉
- 好想去
- 已经列入旅行清单
- 有什么推荐的路线吗?
templates:
- '{keyword}好美,求攻略'
- '{keyword}在哪里'
- 想去{keyword}很久了