GEO SKILL · geo-measurement
yao-chatgpt-crawler
通过 OpenCLI Browser Bridge 连接已登录的 ChatGPT web profile,对 AI Search 问题做多次采样,采集答案和可见来源,输出目标实体与同类型竞品的提及率、Top 1/3/5、平均排名、语义实体审计、引用来源和 HTML 概率报告。
执行说明
--- name: yao-chatgpt-crawler description: "Use when a user provides ChatGPT web AI-search keywords, repeat count, target entity, entity type, OpenCLI profile, and crawl interval preference, then needs repeated crawls aggregated into JSON plus a Kami HTML GEO report. Not for generic crawling, ChatGPT API chat, SEO writing, or one-off answers." --- # Yao ChatGPT Crawler ## Inputs Questions, repeat count, target entity/type (`person/company/product`), browser profile, delay preset, optional output directory, and same-type competitors. Use random `30s-1m` by default; support `1-3m` and `3-10m` when requested. ## Workflow 1. Read `references/user-setup-and-usage.md`, `references/chatgpt-crawl-workflow.md`, and `references/report-contract.md` as needed. 2. Run `node scripts/preflight.mjs --profile <profile>` before fresh crawling. 3. Stage 1: run `scripts/chatgpt_batch_crawl.mjs` with questions, repeat, profile, target entity/type, interval preset, and output dir. 4. Stage 2: run `scripts/analyze_chatgpt_results.py`. Follow the competitor-review rules in the workflow reference; a target-only alias file never disables inference. 5. Return crawl JSON, summary, structured Markdown/Excel, HTML report, optional semantic-review cache, and failed logs. ## Honest Boundaries - Reuses local ChatGPT web automation; does not bypass login, bot checks, or hidden data. - Visible ChatGPT citations bound source analysis; probability metrics are repeated-sample estimates. - Inferred competitors are heuristic. Review aliases before external use; use `--semantic-review required` when formal-report confidence demands it. - The entity table is an audit surface; only rows entering the competitor matrix affect metrics. - Preserve raw answers, reference titles, URLs, and logs so every conclusion can be audited.
使用指南
<!-- Copyright © 2026 姚金刚. All rights reserved. Project: yao-chatgpt-crawler Created by: 姚金刚 Date: 2026-06-25 X: https://x.com/yaojingang --> # yao-chatgpt-crawler `yao-chatgpt-crawler` 是一个 ChatGPT Web AI Search 采样与 GEO 概率分析 skill。它通过 OpenCLI Browser Bridge 连接已经登录的 Chrome 或 Edge profile,对同一组问题做多次 ChatGPT web 采样,抓取答案、可见引用来源和来源弹层链接,再输出目标实体与同类型竞品的概率报告。 它不是 ChatGPT API 客服开发工具,也不是通用网页爬虫。 ## 适用场景 - 评估某个品牌、公司、人物或产品在 ChatGPT 答案中的出现概率。 - 多次采样同一批 AI 搜索问题,观察 Top 1 / Top 3 / Top 5、平均排名和提及率。 - 识别同类型竞品,并过滤噪声词、概念词和非同类型实体。 - 分析 ChatGPT 答案里的引用来源、域名分布、标题意图和重复引用。 - 输出可交付的 HTML 报告、结构化 Markdown、Excel 和机器可读 JSON。 ## 输入项 标准执行前需要确认: - 关键词 / 问题列表 - 重复采样次数 - 目标实体 - 实体类型:人、公司或产品 - OpenCLI profile - 单次查询间隔:默认随机 `30s-1m`,可选 `1-3m` 或 `3-10m` - 可选别名 / 竞品表 ## 执行流程 1. 运行 `node scripts/preflight.mjs --profile <profile>` 检查 OpenCLI、浏览器连接和 ChatGPT 会话。 2. 准备 `questions.txt`,每行一个问题。 3. 准备可选 `brands.txt`,每行一个实体,别名用 `|` 分隔。 4. 运行 `scripts/chatgpt_batch_crawl.mjs` 做重复采样。 5. 运行 `scripts/analyze_chatgpt_results.py` 聚合实体、来源、标题、情绪和概率指标。 6. 检查 `report/summary.json`、`report/structured-data.md`、`report/structured-data.xlsx` 和 `report/report.html`。 ## 延迟策略 Fresh crawl 默认在每次查询之间随机等待 `30s-1m`。更保守的运行可以使用: - `--delay-preset 1-3m` - `--delay-preset 3-10m` - `--safe-random-delay`,等同于 `3-10m` 这些策略只是降低请求频率,不绕过登录、验证码、限流或账号风控。 ## 示例命令 ```bash node scripts/chatgpt_batch_crawl.mjs \ --questions questions.txt \ --repeat 3 \ --profile edge-chatgpt \ --target-entity "豆包" \ --target-aliases "Doubao,豆包大模型,豆包模型" \ --entity-type product \ --brands-file brands-model-products.txt \ --delay-preset 1-3m \ --out-dir runs/doubao-chatgpt ``` ```bash python3 scripts/analyze_chatgpt_results.py \ runs/doubao-chatgpt/chatgpt-crawl.json \ --target-entity "豆包" \ --target-aliases "Doubao,豆包大模型,豆包模型" \ --entity-type product \ --brands-file brands-model-products.txt \ --semantic-review auto \ --title "ChatGPT AI Search Probability Report" \ --out-dir runs/doubao-chatgpt/report ``` ## 公开真实测试 仓库包含一个脱敏后的真实测试: - [豆包模型产品 ChatGPT Web Search 测试](../../skills/yao-chatgpt-crawler/examples/doubao-model-products-real) - [HTML 报告](../../skills/yao-chatgpt-crawler/examples/doubao-model-products-real/report/report.html) - [summary.json](../../skills/yao-chatgpt-crawler/examples/doubao-model-products-real/report/summary.json) 这个案例使用 5 个国产大模型问题、每题 3 次采样、目标实体 `豆包`、实体类型 `模型产品`。公开版保留答案文本、引用来源、实体识别和概率指标,但移除了本机 profile、ChatGPT 会话链接、raw 控制台输出和绝对路径。 ## 质量门 - 每个正式报告必须声明目标实体、实体类型和采样口径。 - 竞品概率表只能纳入同类型实体。 - 自动实体识别必须暴露语义标签、置信度、进入竞品原因和排除原因。 - 英文报告模式下,标题、导航、表头、说明文字和图表标签都应使用英文。 - 公共示例必须脱敏,不提交私有 raw/log 目录。 ## 包路径 - Skill package: [skills/yao-chatgpt-crawler](../../skills/yao-chatgpt-crawler)
来源:yaojingang/yao-geo-skills,MIT License。工作流输出仍需人工核验,不应把未证实的品牌主张直接发布。