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,78 @@
---
collected: true
collected_date: 2026-05-16
---
# Ch1: AI视频生成的"执行本质"与结果推导逻辑
> 核心问题:AI 不是读心术,指令的明确性决定输出上限。
---
## 一、底层逻辑:从"脑内画面"到"机器指令"
### 1.1 信息传递模型
```
创作者愿景(模糊画面) → 编码(撰写提示词) → AI解码(算法生成) →
输出视频 → 对比检验 → 迭代微调(黄金法则5%:每次只改5%)
```
这不是单向输出,而是人机协作的**迭代反馈回路**。
### 1.2 提示词基础公式
```
提示词 = 主体(谁) + 场景(在哪) + 运动(做什么)
```
这是搭建视频骨架的基石。在此基础上注入"导演思维":
- **观察视角**:告诉 AI 从哪个角度看
- **情感基调**:告诉 AI 什么情绪氛围
- **时间线索**:告诉 AI 变化过程
### 1.3 AI不是全能助手,是精确执行者
| 人类思维 | AI思维 |
|---------|--------|
| 联想、模糊、本能理解 | 字面、精确、逐条执行 |
| 看到"雨夜"→潮湿/寒意/孤独 | 看到"雨夜"→雨和夜两个元素 |
| 喜欢概括描述:"做得好一点" | 需要量化细节:"仰视、逆光、0.5倍速" |
| 基于感受的内在直觉 | 基于指令组合的外在运算 |
| 信息过载时会概括提炼 | 信息过载时会混乱冲突 |
### 1.4 为什么AI需要明确指令
1. **缺乏常识和联想能力**:输入"一个人走路",AI可能生成任何场景
2. **信息过载阈值**:超过5个核心信息、3组动态元素、10个修饰词 → AI无法聚焦
3. **时空错乱**:缺少明确的空间/时间过渡描述 → 画面跳跃
4. **文化差异**:AI训练数据的文化背景可能与你不同
---
## 二、提示词信息传递模型
### 2.1 逆向编码闭环
```
步骤1:解构 → 将愿景分解为主体/场景/运动
步骤2:注入 → 加入镜头语言、氛围调色盘、风格化基因
步骤3:设定边界 → 使用负面清单防止跑偏
步骤4:检验 → 对比生成视频与源点愿景
步骤5:迭代 → 每次只改5%的关键词进行AB测试
```
### 2.2 核心原则
- **不要告诉AI你想要什么,而是教会AI如何用它的方式构建出你想要的画面**
- **把AI当作一个精确执行者,而不是全能助手**
---
## 采集来源
| 来源 | 内容 |
|------|------|
| 搜狐 | AI视频7大提示词攻略 |
| freeaitool.com | AI视频提示词工程2026指南 |
| CSDN | Sora提示词工程实战 |
@@ -0,0 +1,135 @@
---
collected: true
collected_date: 2026-05-16
---
# Ch2: 结果推导方法论——从目标画面反推指令锚点
> 核心方法:先想清楚最终画面,再反向拆解和描述它。
---
## 一、三大核心步骤
### 步骤1:视觉要素深度拆解
从四个维度审视目标画面:
**主体要素**
- 形态特征:八头身比例、肌肉线条分明
- 材质表现:磨砂金属、半透明硅胶
- 动态捕捉:跳跃瞬间、手指弯曲45度
- 表情管理:眼角上扬15度
**环境系统**
- 空间层次:前中背景的元素分布
- 物理特性:重力、光照、大气折射
- 时间维度:季节、昼夜、天气
- 文化符号:特定时代的建筑/服饰
**光影工程**
- 光源位置:钟表定位法(3点钟方向顶光)
- 光质控制:硬光(直射) vs 柔光(漫反射)
- 色温调节:2000K到10000K
- 光比计算:主光与辅光比值(光比4:1)
### 步骤2:结构化提示词构建
语法规范:`[要素描述:权重系数]`
```
示例:[主体描述:1.5], [环境系统:1.2], [光影方案:1.3]
(masterpiece:1.8), (cyberpunk cityscape:1.5), (neon lights:1.3)
```
**权重应用**:
- 权重越大,AI对该要素越重视
- 艺术风格编码:`cinematic, bokeh`(摄影)、`octane render, PBR`(3D)
- 构图参数:`16mm`(广角)、`f/1.2`(虚化)
### 步骤3:正负向提示词优化
**正向词**(增强画质和细节):
```
基础画质: 8k resolution, HD, ultra-detailed
渲染质量: unreal engine rendering, ray tracing
艺术修饰: award-winning photography, trending on ArtStation
```
**负向词**(排除不想要的):
```
基础缺陷: lowres, bad anatomy, text, watermark
结构错误: deformed, extra limbs, missing parts
渲染问题: blurry, out of focus, overexposed
风格偏差: cartoon, sketch, low poly
```
---
## 二、完整实操案例
### 目标:火星殖民地科幻机甲
1. **视觉拆解**
- 主体:人形机甲,流线型装甲,红色能量核心
- 环境:火星殖民地,橙红色天空,环形山背景
- 光影:日落太阳+机甲眼部蓝色光效
- 风格:电影级3D渲染,参考《星际穿越》
2. **结构化提示词**
```
(masterpiece:1.8), (best quality:1.6), (ultra-detailed:1.4),
(humanoid mecha:1.7), (streamlined armor:1.5), (red energy core:1.4),
(mars colony:1.6), (orange sky:1.5), (crater background:1.4),
(sunset lighting:1.5), (blue eye light:1.3),
(octane render:1.2), (8k resolution:1.0)
```
3. **负向词**
```
(low quality:1.8), (worst quality:1.6), (bad anatomy:1.5),
(deformed mecha:1.4), (text error:1.3), (watermark:1.2),
(blurry:1.1), (cartoon style:1.0), (flat lighting:0.8)
```
### 效率提升数据
| 指标 | 传统方法 | 反推方法论 |
|------|---------|-----------|
| 首次生成满意率 | 63% | 82% |
| 单次生成时间 | 8分钟 | 3分钟 |
| 平均修改次数 | 4.2次 | 1.1次 |
---
## 三、反推思维训练
### 每日练习
看到任何优秀的 AI 视频/图片,尝试反推它的提示词:
1. 分析视觉要素(主体/环境/光影/风格)
2. 推断权重分配(什么最重要)
3. 猜测正负向词
4. 尝试用框架复现
### 通用路径模板
```
目标画面 →
拆解主体/环境/光影/风格 →
分配权重 →
构建正向词+负向词 →
生成 →
检验 →
微调5%
```
---
## 采集来源
| 来源 | 内容 |
|------|------|
| developer.baidu.com | 提示词反推方法论 |
| super-i.cn | 反向提示词策略 |
| ai-bio.cn | 逆向提示词指南 |