# L1 画面值与接口 本文件只在执行 `l1-geo-html-screen-diff` 时读。不要把这里的企业、批次、项目号写成死值。 ## 数据从哪读 HTML 从 `var DATA` 读。L1 报告用 `brand`(`mode=simple` 时没有品牌/产品切换)。综合用 `brand.summary`、`brand.tmc_aggregate`、`brand.source_top30`、`brand.core_competitors`、`brand.wordcloud`。单个 AI 平台用 `brand.platforms[key]`。 平台是 L1,不是 L3。`project` 从 `platform_url` 取。 1. 用当次登录会话打 `resource-api.cemeta.cn`。 2. `GET /api/geo_label/project/batch?companyId={companyId}&reportType=monitor`,用 URL 里的 `batchDate` 找到对应项,再按 `project` 取 `l1CrawlBatchIds[].batchId`。 3. `GET /api/geo-monitor/metrics/l1?table={table}&batchIds={batchId}&projectId={project}&reportType=monitor`。`table` 用 `snapshot`、`competitor`、`tmc`。信源再加 `&platform={平台值}`,`table=source`。 4. 词云:`GET /api/geo-monitor/projects/{project}/wordcloud?batchId={batchId}&sentiment=all`。这个接口不按 AI 平台拆。HTML 词云也是写死综合,七个选项同一套词。 登录账号从项目认证注册表取,跟本次企业走。不要把手机号、密码、token 写进报告。 ## 画面百分比 保留 1 位小数。差超过 0.05 个点才算不同。 - 露出率、前三率、正面率、排行榜露出率:页面直接印的字段。HTML `fmt` 对非 0、非 100 印两位小数,平台印一位。比数值,不比小数位数。 - 分平台:HTML 趋势序列最后一个监测日的点,对平台该平台 snapshot 的 `exposure_rate`、`top3_rate`、`positive_rate`。综合要覆盖六个平台的这三个点。 - 信源内容类型、信源发布时间:HTML 环图图例印 `value / 正值之和 × 100`,并去掉名为「无时间」的项。平台环图同样用 `value / 全部正值之和 × 100`,图例最多 8 条,按值从高到低。 - 媒体类型:HTML 方块去掉「其他」「未知」,再按剩余 `value` 之和重算。平台条形图按值从高到低取前 10;这 10 条 `value` 之和 ≤ 101.5 时直接印 `value`,否则 `value / 该和 × 100`。 - 媒体名称:HTML 没有占比字段,为 `value / 本组 value 之和 × 100`,去掉「其他」「未知」后取前 10。平台与媒体类型同一条形图规则。 ## 排行榜 第 5 项:HTML「行业露出率排行榜」对平台「露出排行 · 各平台明细」。不要切换 AI 平台选项。只比 Top 10,第 11 名及以后不报。 平台全平台列是平均露出率。其余列是 DeepSeek、豆包、通义千问、腾讯元宝、百度文心、Kimi。某品牌在某选项没有露出时,HTML 为空,平台格子是「-」,这不算不同。 HTML 综合榜用 `core_competitors`,本品用 `summary.avg_exposure_rate`。分平台用 `brand.platforms[key].industry_ranking`。画面名称截断后对不上(「车」对「车300」)算名称不同。 三步都要做,任一步不同则第 5 项测试失败❌: 1. 综合平均露出率对平台全平台列。差超过 0.05 算不同。 2. 综合 Top 10 的名次和品牌名,对平台全平台 Top 10。名称逐字相同。 3. 这 10 个品牌在 DeepSeek、豆包、通义、元宝、文心、Kimi 上的露出率,对平台对应列。通义对通义千问,元宝对腾讯元宝,文心对百度文心。 ## 词云 第 6 项不随 AI 平台切换。HTML 词在 `brand.wordcloud`,平台用词云接口,两边都是综合一套。 文案约定,不算失败:HTML「AI 回答关键词」= 平台「AI 认知词云」;HTML「AI 回答正面关键词」= 平台「正面词」;HTML「未监测到负面词」= 平台「中正面率100%,暂无负面词」。 正面词图片:HTML 用词云画布,平台用正面词图。比画出来的词条是否相同,不比大小、颜色和位置。负面有词时比词条;两边都空时用上面的空态文案。 ## 关联信源 第 11 项按标题对齐,比渠道和被引次数,不比行号。集合相同就是测试通过✅。通义不足 30 条时,有几条比几条,两边条数不同才失败。 第 12 项比画面序号上的标题。 - HTML 顺序:`source_top30` 数组顺序,取前 30。 - 平台顺序:接口返回的行按 `cite_count` 从高到低做稳定排序,次数相同则保持接口原顺序。不要用 `rank` 字段顺序,那个顺序和平台表格不一致。 同一序号标题不同、但被引次数相同:记测试失败❌,表里写序号、HTML 标题、平台标题、被引次数,并写明是并列换位,不是缺标题。