移植自 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 带网关原话 / 正常返回)。
1.9 KiB
1.9 KiB
2026-06-21 工作日志
今日计划
基于昨日录制数据和旧稳定代码,修复两个平台剩余原子操作
08:00-08:20 — 双平台修复+测试
修复内容
- 抖音 follow: KEYS['follow'] 从 'f' 改为 'g'(录制发现用户用g键) + 键盘g兜底 ✅
- 抖音 post_comment: 加发送按钮查找+comment-list文本验证(参考旧版interactive_test.py) ✅
- 抖音 open_video: 加feed加载等待 + 多选择器(discover-video-card/href/video/feed-card) ⚠️
- 小红书 post_comment: 重写为JS找textarea/input/editable + 找发送按钮 ✅
测试结果
| 平台 | 步数 | 成功 | 失败 | 耗时 |
|---|---|---|---|---|
| 抖音 | 16 | 13 | 3 | 4.9min |
| 小红书 | 16 | 12 | 4 | 10.8min |
关键进展
- 小红书 post_comment 首次成功发送评论 ✅ "👍评论(测试评论) (5.0s)"
- 抖音 follow 键盘g生效 ✅
- 小红书 like/collect/search 全部正常 ✅
剩余问题
- 抖音 open_video: 当前 douyin
/jingxuan页面没有.discover-video-card-item,需录制查看实际DOM - 小红书搜索结果页: search后页面布局不同,click_note/like/collect/follow 均失败
- xhs_like 在非笔记页(搜索页)取31s兜底
明日任务
P0: 抖音 open_video 录制→找出正确的选择器 P1: 小红书搜索结果页操作适配 P1: 双平台日常养号蓝图测试
09:00-10:05 — 架构反思 + 新方案设计 + 录制验证
关键突破
- 发现collect用的键是C(不是无键),KEYS['follow']是g不是f
- 拿到完整抖音快捷键表
- 创建PageInspector(L1/L2/L3) + 四层状态模型
- ghai录制18步(首次用状态diff思路)
- 提出L4视觉状态层(按钮变色等)
- 完整经验文档: EXPLAIN-atomic-ops-20260621.md
新核心文件
- page_inspector.py: 四层状态检测器
- PLAN-atomic-ops-v2.md: 完整项目规划
- EXPERIENCE-atomic-ops-20260621.md: 经验文档