# 2026-09-02 Session 记录

## 1. get_brand_from_dify_v3.py 通用化（catName 参数化）

用户要求将品牌专用脚本改为通用读取脚本：**接收 1 个位置参数 = Dify 的 catName，同时也是 origin_data json 模块名**。

```bash
python3 get_brand_from_dify_v3.py brand_hotspots          # → 0902data.json 的 brand_hotspots 段
python3 get_brand_from_dify_v3.py vehicle_hotspots
python3 get_brand_from_dify_v3.py social_hotspots
python3 get_brand_from_dify_v3.py hyundai_buzz_topics_domestic
python3 get_brand_from_dify_v3.py hyundai_buzz_topics_international
```

- 核心逻辑：`call_dify(cat_name)` 拼 inputs `{"method":"GET","catName":<参数>,"input":""}`；`replace_section()` 按 `section.name == cat_name` 匹配替换/新建
- 兼容两种响应结构（直接数组 / section 包装展开 list），filter 按 title 非空 + 补 yesorno
- 原文件备份 `.bak`；脚本同时保留 brand 的 filter_items 语义
- timeout 600s（0901 文档建议 ≥600s）

## 2. ⚠️ 实测：品牌/车型 token 的工作流支持全部 5 个 catName

此前（0901）以为该 API 仅支持 vehicle_hotspots / brand_hotspots。本次实测**同一工作流**（token app-ODwFQHiS45BuPerRlw77PVv8）5 个 catName 全部成功一次通过，无重试：

| catName | 0902 返回条数 | 备注 |
|---|---|---|
| brand_hotspots | 99 | 广告门为主 |
| vehicle_hotspots | 20 | 全部当天(09-02)内容（日期过滤）|
| social_hotspots | 5 | 自带 heat_score/selection_reason/yesorno |
| hyundai_buzz_topics_domestic | 5 | brand 有值：北京现代/起亚 |
| hyundai_buzz_topics_international | 5 | 现代全球销量等 |

→ **现代国内/国际现在可用此 catName 通用脚本获取**（不再依赖 get_hyundai_from_dify.py 专用 token 工作流 app-f9e3...；该专用工作流仍可作为兜底）

## 3. 自带 yesorno='yes' 确认

vehicle/social/hyundai 返回条目自带 `yesorno='yes'`（Dify 数据源自带标记，非评分产生）。0901 先例：用户「其他板块不处理」时保留；merge_yes_learn 会清空，以 learn_records 手动恢复为准。

## 4. 一次性拉取 5 类的推荐写法

```bash
for cat in brand_hotspots vehicle_hotspots social_hotspots hyundai_buzz_topics_domestic hyundai_buzz_topics_international; do
  python3 /data/news/scripts/get_brand_from_dify_v3.py "$cat"
done
```
每个调用独立写文件（顺序执行，同一 0902data.json 逐段追加/新建）；网络慢时单次最长 10 分钟，建议后台 + notify_on_complete。
