Files
Sansheng-Intelligence/docs/PIPELINE.md
T
Jack f1ce583fd1 feat: 发布三笙AI情报局独立版公司研发基线
同步家纺情报 v2 数据、59 个严格权威源、趋势图库、移动端交互、Google/Yandex 翻译门控及静态 SEO/GEO 构建。

补充面向 C# 研发的 README,明确当前无 LLM、多模态与生图模型,记录翻译请求参数、缓存与失败策略、数据处理边界、前端职责和无 GitHub Pages 部署流程。

新增按日期倒序维护的 CHANGELOG,记录影响、验证与代码/数据/dist 回滚方法。

验证:11 个 Python 契约测试、13 个 Node 前端测试通过;静态构建生成 1096 个 Sitemap URL。
2026-08-14 19:26:39 +08:00

42 lines
2.7 KiB
Markdown

# 更新流水线
```mermaid
flowchart LR
A[官方与参考源] --> B[并发抓取和证据词校验]
B --> C[结构化解析与语种识别]
C --> D[中文缓存和翻译链接]
D --> E[规范化、聚合、排序和去重]
E --> F[临时 JSON 校验]
F --> G[静态 SEO / GEO 构建]
G --> H[原子替换 data 与 dist]
H --> I[本地 HTTP 服务或任意静态服务器]
```
## 抓取
`update_textile_trends.py` 先更新趋势数据,`update_textile_intelligence.py --strict` 再校验权威源并构造全部业务栏目。HTTP 使用超时、有限重试、固定浏览器 UA、内容类型检查和正文证据词,不把“HTTP 200”直接当成功。
BSMI 官方站证书缺少现代 OpenSSL 严格模式要求的 Subject Key Identifier。`LegacyCertificateAdapter` 只挂载到该域名,并同时作用于代理连接;仍保留 CA 链和主机名验证,禁止全局 `verify=False`。
## 翻译
先识别域名、页面语言和正文字符。简体中文或 `.cn` 不创建翻译入口;繁体中文保留原文并提供简体辅助。Google 和 Yandex 只生成访问 URL,不抓取或存储整页翻译。标题和摘要的中文结果进入 `textile-zh-cache.json`,当前使用规范化后的完整原文字符串作为缓存键;内容指纹另用于判断源站是否变化。
## 排序与去重
- 日历:规范化节名、日期、适用区域后聚合多个官方来源;同一聚合条目并列展示证据。
- 展会:规范化展名、开始日和城市,动态目录与固定官方源相遇时保留官方字段。
- 政策:按风险、发布时间、生效时间和适用市场排序;召回与经营政策分类型展示。
- 今日必看:只选择可行动的备货、临近展会、重大政策和趋势任务,已过备货窗降级为营销或履约状态。
- 趋势:URL、规范化标题和内容指纹去重,优先有图片和较新发布时间的条目。
## 增量与容量
`update_all.py` 在 `runtime/update-*` 临时目录完成全部流程。新旧文件 SHA-256 相同则不写正式数据;有变化时先把旧四份 JSON 压缩为单个快照,再使用 `os.replace` 原子更新。快照最多 14 份、总计不超过 120 MiB。
公开 `dist/data` 只包含两份运行 JSON,不发布源状态和翻译缓存。静态详情页由数据重建,不进入源码版本管理。若以后迁移数据库,建议保留当前 JSON 作为版本化交换契约,而不是让爬虫直接写业务表。
## 失败语义
以下任一情况退出非零且不发布:严格源失败、活动源失败、核心栏目为空、JSON 无法解析、SEO 构建失败、目标目录替换失败。日志允许趋势参考源 403 后跳过,因为它们不计入严格权威源;该降级会保留在趋势错误字段中。