AI回答引擎的关键词研究:挖掘答案自身的框架
Advanced Data Extraction Specialist
简而言之:
- AI回答是现成的内容大纲。 当一个引擎回答一个主题时,其结构化答案的标题和加粗短语就是它认为重要的子主题——挖掘这些,你就能从模型实际返回的内容中构建出关键词和大纲图。
- 一个提示,多个引擎,一个封装。 Scrapeless LLM演员(
scraper.chatgpt、scraper.gemini、scraper.perplexity等)共享一个端点和一个{ status, task_id, task_result }形状,因此单个循环可以捕获每个引擎的回答文本。 - 信号来自答案自身的结构,而非引用。
result_text中的Markdown标题和短加粗短语就是子主题;提取它们不需要模型密钥,只需要一个解析器。 - 跨引擎覆盖排名子主题。 多个引擎独立提到的子主题,是你的内容几乎必需涵盖的内容。
- 按计划运行。 随时间重新捕获一个种子主题,并观察引擎开始或停止强调哪些子主题。
- 免费开始。 新的Scrapeless账户包括免费试用信用——可以在app.scrapeless.com注册。
流程一览
传统的关键词研究始于搜索框和流量估计。AI回答研究则始于答案本身:询问引擎你的种子主题,并回读它施加的结构——它将主题分成的部分、它加粗的概念、以及它们的顺序。该结构是模型为你撰写的内容简要。
构建分为三个阶段,基于Universal Scraping API:
- 捕获 — 通过Scrapeless演员在AI回答引擎上运行种子主题;存储每个答案。
- 提取 — 从每个答案的Markdown中提取标题和短加粗短语;这些就是候选子主题。
- 排名 — 计算有多少个引擎提到每个子主题;重合部分是你的优先顺序。
输出是一个排名的子主题列表,你可以将其转化为大纲、简要或关键词聚类。有关引擎引用的来源的附属指标,请参见AI概述爬虫指南。
你可以用它做什么
- 从答案构建内容简要。 引擎的标题成为你的H2;加粗短语成为每个部分需要涵盖的要点。
- 找到现有页面的空缺。 将引擎的子主题与已有部分进行比较,并撰写缺失的内容。
- 按意图集群关键词。 同时出现在多个引擎中的子主题应归入同一个作品;独立存在的主题可能值得拥有自己独立的页面。
- 跟踪主题漂移。 每月重新捕获,观察哪些子主题上升——关于主题走向的早期阅读。
- 用证据简要撰写者。 “三个引擎围绕X、Y和Z进行结构化”比猜测提供了更强的简要。
为什么选择Scrapeless LLM演员
每个AI助手都是一个 JavaScript应用程序,背后有身份验证和 反自动化防御;自己捕获答案意味着每个平台都需要渲染、登录和 代理轮换。Scrapeless LLM演员在服务器端运行这些过程,并将答案作为一个字段返回。特别是在子主题挖掘方面,它们带来了:
- 跨引擎共享的
{ status, task_id, task_result }封装,因此一个循环和一个解析器覆盖整个集合。 result_text作为Markdown——标题和加粗标记完整保留,这正是提取器所读取的内容。- 在195多个国家的住宅出口,因此一个固定的
country能捕获该市场真实用户看到的答案结构。 - 无需运行或保持登录的浏览器——一个端点,一个
x-api-token头。
演员线的定价是基于使用的,注册时提供免费试用信用——当前的定价层次请见定价页面。在免费计划中获取你的API密钥,前往app.scrapeless.com。
前提条件
- 一个 Scrapeless 账户和 API 密钥(免费计划包括试用积分)— app.scrapeless.com。
- 您环境中的密钥:
bash
export SCRAPELESS_API_KEY="your_api_token_here"
- 使用
requests的 Python 3。提取步骤仅使用标准库。
第1阶段 — 捕获答案
一个循环覆盖所有引擎,因为参与者共享一个端点和一个信封。答案文本以 markdown 格式保留在 result_text 中,标题和粗体标记完好无损。
python
import json
import os
import time
import requests
ENDPOINT = "https://api.scrapeless.com/api/v2/scraper/execute"
HEADERS = {
"Content-Type": "application/json",
"x-api-token": os.environ["SCRAPELESS_API_KEY"],
}
SEED = "初学者的网络爬虫"
COUNTRY = "US"
ENGINES = {
"chatgpt": {"actor": "scraper.chatgpt", "extra": {}},
"perplexity": {"actor": "scraper.perplexity", "extra": {"web_search": True}},
"gemini": {"actor": "scraper.gemini", "extra": {}},
}
with open("answers.jsonl", "w", encoding="utf-8") as out:
for platform, spec in ENGINES.items():
payload = {"actor": spec["actor"], "input": {"prompt": SEED, "country": COUNTRY, **spec["extra"]}}
data = requests.post(ENDPOINT, headers=HEADERS, json=payload, timeout=300).json()
result = data.get("task_result") or {}
out.write(json.dumps({
"platform": platform,
"seed": SEED,
"captured_at": int(time.time()),
"status": data.get("status"),
"result_text": result.get("result_text") or "",
}) + "\n")
print(f"{platform}: {data.get('status')}")
answers.jsonl 的每一行是一个引擎对种子的完整回答。
在免费计划中获取您的 API 密钥: app.scrapeless.com
第2和第3阶段 — 提取子主题并按重叠排名
从每个答案的 markdown 中提取标题和简短的粗体短语,然后计算有多少个引擎提到每一个。故意省略 web_results 的标题 — 它们包含第三方页面名称,而不是子主题。
python
# extract.py — answers.jsonl -> 排名的子主题候选
import json
import re
from collections import Counter
cands = Counter()
for line in open("answers.jsonl", encoding="utf-8"):
record = json.loads(line)
text = record["result_text"]
for heading in re.findall(r"^#{2,4}\s+(.+)$", text, re.M):
cands[heading.strip().lower()[:60]] += 1
for bold in re.findall(r"\*\*(.+?)\*\*", text):
phrase = bold.strip().lower()
if 2 <= len(phrase.split()) <= 6 and not phrase.startswith("http") and ":" not in phrase:
cands[phrase[:60]] += 1
ranked = [{"subtopic": k, "hits": c} for k, c in cands.most_common(25) if k]
json.dump(ranked, open("keywords.json", "w"), indent=2)
for item in ranked[:12]:
print(f'{item["hits"]}x {item["subtopic"]}')
对种子 “初学者的网络爬虫” 进行的实时运行显示了像 javascript 渲染网站、反机器人保护、大规模爬虫、有代码与无代码 的决策、python 爬虫栈 和 检查元素 等子主题 —— 这些正是面向初学者的页面应覆盖的确切部分。由于每次运行时答案会重新生成,精确的列表会有所变化;跨引擎和跨运行反复出现的子主题是值得优先考虑的持久主题。
调度和扩展系列
按计划运行 capture.py 然后 extract.py,并按 captured_at 追加每次运行的结果。以下是实时运行中的一些注意事项:
- 过滤噪音。 markdown 标题包括“这是什么”之类的框架 — 保留一个小停用列表,或者要求一个子主题在两个或多个引擎中出现后才算数。
- 按跨引擎重叠排名,而不是原始频率。 三个引擎独立提及的子主题比一个引擎重复自己更具信号强度。
- 确定
country。 回答结构会因市场而异;在记录中保留该值,以便系列保持可比性。 - 与引用数据配对。 子主题告诉你 要 涉及什么;引用来源(单独的捕获)告诉你 谁 是引擎目前信任的。
结论:让答案为你的大纲写作
针对一个主题的最快内容简报就是 AI 引擎每次回答时已生成的内容。捕获答案,阅读其结构,并在引擎之间对子主题进行排名,那么“这个页面应该覆盖什么?”就不再是一个猜测——它变成了一个你衡量过的列表。
准备构建您的 AI 答案数据管道了吗?
加入我们的社区以申请免费计划,并与构建 AI 答案管道的开发者联系: Discord · Telegram。
在 app.scrapeless.com 注册以获取免费试用积分,并将管道指向您的内容程序所涵盖的种子主题和市场。
常见问题
问:这与关键词工具有什么不同?
答:关键词工具提供查询字符串和流量估算。而这个工具提供的是 AI 引擎在回答中施加的子主题结构——它认为重要的部分和概念——这比扁平的关键词列表更直接地映射到大纲上。
问:提取步骤需要模型 API 密钥吗?
答:不需要。标题和粗体标记是纯文本 markdown,因此提取器仅使用标准库。基于模型的处理是聚类或标记的可选升级。
问:为什么子主题在不同运行之间会变化?
答:每个引擎会重新生成其答案,因此确切的标题会有所不同。这就是为什么管道通过跨引擎和跨运行的重叠进行排名——重复出现的子主题是稳定的信号。
问:抓取 AI 答案合法吗?
答:参与者阅读公开可用的回答内容。与任何抓取行为一样,限制使用公共数据,尊重每个平台的条款,避免个人数据,且如用例不明确,请咨询律师。
在Scrapeless,我们仅访问公开可用的数据,并严格遵循适用的法律、法规和网站隐私政策。本博客中的内容仅供演示之用,不涉及任何非法或侵权活动。我们对使用本博客或第三方链接中的信息不做任何保证,并免除所有责任。在进行任何抓取活动之前,请咨询您的法律顾问,并审查目标网站的服务条款或获取必要的许可。



