🎯 一款可定制、具备反检测功能的云浏览器,由自主研发的 Chromium驱动,专为网页爬虫AI 代理设计。👉立即试用
返回博客

如何使用 Grok Scraper API 爬取 Grok 答案

Emily Chen
Emily Chen

Advanced Data Extraction Specialist

10-Jun-2026

TL;DR

  • Grok抓取API以数据格式返回xAI的答案以及其两个源面板。scraper.grok演员发送一个POST请求,可以捕获完整的答案,以及web_search_resultsx_search_results — Grok引用的开放网络页面和X(Twitter)帖子,作为单独的数组。
  • 三个输入,其中一个不寻常。 prompt包含问题,country指定居住地,所需的推理modeMODEL_MODE_FASTMODEL_MODE_EXPERTMODEL_MODE_AUTO — 控制Grok在回答之前的推理深度。
  • X引用是区别因素。 Grok将实时网络搜索与X的实时推送相结合;仅捕获答案文本会丢掉说明来源的那一半数据。
  • 封装与其他LLM演员匹配。 { status, task_id, task_result },一个x-api-token,相同的端点 — ChatGPT捕获客户端通过更改演员名称和添加mode扩展到Grok。
  • 运行元数据免费提供。 后续建议、脚注、令牌计数和运行的对话标识符将随同在同一有效负载中,准备进行审计追踪。
  • 免费开始。 新的Scrapeless账户包括免费试用积分 — 在app.scrapeless.com注册。

介绍:内有社交推送的答案引擎

Grok通过结合两种其他主要助手不结合的源类型回答问题:实时网络搜索和直接从X拉取的帖子。无论问哪个工具可买,哪个API可靠,哪个品牌可信,答案都会将网页和X帖子折叠成一个引用答案。对于任何跟踪品牌在AI答案中表现的人来说,这使得Grok成为一个独特的界面 — 引用不仅包括索引的网络,还包括社交对话。

手动捕获这些答案通常是这样的:一个需要登录的接口、流式输出、地理敏感响应,以及一个从不打算被解析的DOM。而Grok添加了自己的新意 — 推理模式改变答案,因此捕获管道必须明确控制它。

scraper.grok演员将所有内容整合为一个HTTP请求:输入提示、国家、和模式;输出结构化答案和两个引用面板。本指南涵盖请求形状、响应架构、可运行的Python客户端以及涵盖其余AI答案领域的配套演员。有关该类别的排名视图,请参阅最佳LLM抓取指南

您可以用它做什么

  • 跨两个面板的引用份额跟踪。 统计在固定的提示集上,web_search_results中出现的域和x_search_results中出现的账户。
  • 以X驱动叙事的品牌监控。 对于先在X上形成情绪的类别,Grok的引用展示了哪些帖子塑造了模型的答案。
  • 推理模式比较。FASTEXPERTAUTO下捕获相同的提示,并测量深度如何改变答案和来源。
  • 多市场捕获。 针对不同国家的运行进行对比,比较Grok就同一问题给出的不同市场回答。
  • 竞争答案分析。 跟踪Grok何时开始或停止推荐某一产品,并追踪背后的引用变化。
  • 数据集构建。 将提示–答案–面板三元组存储为干净的JSON,便于纵向分析。

为什么选择Scrapeless Grok抓取器

scraper.grok演员是Scrapeless LLM Chat Scraper系列的一部分,属于通用抓取API产品线:

  • 两个引用面板作为离散数组。 开放网络源和X帖子分别到达 — 引用份额报告直接读取每个面板,无需重新解析。
  • 推理模式为一等输入。 您可以决定每次运行Grok的思考深度,这保持了计划系列在方法上的一致性。
  • 国家固定的居住出口。 在195个国家/地区设置运行,因此特定于地区的答案是可重复的。
  • 跨平台一个合同。 相同的端点、头部和{ status, task_id, task_result }封装涵盖了ChatGPT、Gemini、Perplexity和Copilot演员。

参数参考位于LLM Chat Scraper文档

先决条件

  • 一个Scrapeless账户和API密钥 — 在app.scrapeless.com注册。
  • 使用curl进行快速测试,或使用Python 3.10+进行下面的客户端。
  • 对HTTP和JSON有基本的了解。
    将您的密钥存储在环境中,以便它永远不会出现在代码中:
bash Copy
export SCRAPELESS_API_KEY=your_api_token_here

Grok Scraper 的工作原理

  • 端点: POST https://api.scrapeless.com/api/v2/scraper/execute
  • 角色: scraper.grok
  • 认证头: x-api-token: $SCRAPELESS_API_KEY

请求参数

输入字段 必填 描述
prompt 发送给 Grok 的问题
country 运行的住宅出口的两字母国家代码(例如:US;JP 和 TW 不可用)
mode 推理深度:MODEL_MODE_FASTMODEL_MODE_EXPERTMODEL_MODE_AUTO

使用 curl 快速捕获

bash Copy
curl -sS -X POST https://api.scrapeless.com/api/v2/scraper/execute \
  -H "Content-Type: application/json" \
  -H "x-api-token: ${SCRAPELESS_API_KEY}" \
  -d '{
    "actor": "scraper.grok",
    "input": {
      "prompt": "哪个网络爬虫 API 处理 JavaScript 密集型网站?",
      "country": "US",
      "mode": "MODEL_MODE_EXPERT"
    }
  }'

响应信封

json Copy
// 示例样本 — 来自 live scraper.grok 运行的架构;值简化
{
  "status": "success",
  "task_id": "52fc9c96-…",
  "task_result": {
    "user_query": "哪个网络爬虫 API 处理 JavaScript 密集型网站?",
    "full_response": "对于 JavaScript 密集型网站,能够应对的选项是…",
    "web_search_results": [
      { "title": "…", "url": "https://…", "preview": "…", "description": "…", "favicon": "…", "image": "…" }
    ],
    "x_search_results": [],
    "follow_up_suggestions": [ "…" ],
    "footnotes": [],
    "tool_usages": [ "…" ],
    "token_count": 1024,
    "user_model": "…",
    "response_id": "…",
    "conversation": { "conversation_id": "…", "title": "…", "create_time": "…" }
  }
}

逐字段:

字段 类型 内容
task_result.user_query 字符串 Grok 接收到的提示
task_result.full_response 字符串 Grok 的完整回答文本
task_result.web_search_results[] 数组 开放网络引用 — titleurlpreview,以及在给定时的 descriptionfaviconimage
task_result.x_search_results[] 数组 Grok 引用的 X 帖子;当提示未提及社交源时为空
task_result.follow_up_suggestions[] 数组 Grok 在回答后提供的后续问题
task_result.footnotes[] 数组 脚注条目,当回答中包含时
task_result.tool_usages[] 数组 运行调用的工具(搜索、浏览)
task_result.token_count 数字 运行的令牌使用情况
task_result.conversation 对象 运行标识符 — conversation_idtitle、时间戳 — 作为审计键非常有用

在免费计划上获取您的 API 密钥:app.scrapeless.com

在 Python 中集成 API

一个完整的客户端:发送提示,检查信封,并打印两个引用面板。

python Copy
import os
import requests

ENDPOINT = "https://api.scrapeless.com/api/v2/scraper/execute"


def ask_grok(prompt: str, country: str = "US", mode: str = "MODEL_MODE_EXPERT") -> dict:
    resp = requests.post(
        ENDPOINT,
        headers={
            "Content-Type": "application/json",
            "x-api-token": os.environ["SCRAPELESS_API_KEY"],
        },
        json={
            "actor": "scraper.grok",
            "input": {"prompt": prompt, "country": country, "mode": mode},
        },
        timeout=300,
    )
    resp.raise_for_status()
    return resp.json()


if __name__ == "__main__":
    data = ask_grok("哪个网络爬虫 API 处理 JavaScript 密集型网站?")
    result = data.get("task_result", {})
    web = result.get("web_search_results") or []
    x = result.get("x_search_results") or []
    print(f"status={data.get('status')} web_sources={len(web)} x_sources={len(x)}")
    for i, src in enumerate(web[:5], 1):
        print(f"  [web {i}] {src.get('title', '')[:60]} → {src.get('url', '')[:60]}")
    for i, post in enumerate(x[:5], 1):
        print(f"  [x {i}] {str(post)[:80]}")

对于引用分享的工作,按域名分组 web_search_results URLs,按账户分组 x_search_results,并根据提示计数 — 这两个面板是独立信号,值得单独绘制。

选择推理模式

所需的 mode 是没有 ChatGPT 等效项的输入,它会同时影响延迟和输出:

  • MODEL_MODE_FAST — 最快的回答;适合高频次查询,广度胜于深度。
  • MODEL_MODE_EXPERT — 更深入的推理,通常来源更丰富;适合您随时间推移的提示。允许较长的运行时间。
  • MODEL_MODE_AUTO — Grok 根据提示选择;便于互动,但当模式保持不变时,计划中的系列更易于解释。
    无论您选择哪个,都要与每次捕获一起存储它——将专家运行与快速运行进行比较就是在比较两种不同的过程。

AI回答领域的辅助角色

端点、头部和信封在整个家族中保持不变——只改变角色名称和特定于平台的输入:

  • scraper.chatgptprompt + 可选的 country;返回带有 content_references 引用的 result_text
  • scraper.gemini — 相同的两个字段输入;返回 result_textcitations 数组。
  • scraper.perplexity — 必需的 country 和一个 web_search 标志;返回 web_resultsmedia_items 和相关提示。
  • scraper.copilot — 在同一个合约下的 Copilot 答案表面。
  • scraper.overview / scraper.aimode — 谷歌的AI概览区块和AI模式标签;在AI概述指南中全面覆盖。

该系列的定价是基于使用量的,注册时提供免费试用积分——当前的层级信息可在定价页面找到。

如何避免常见问题

  • 许多提示返回空的 x_search_results 是正常的。 技术和产品问题往往完全来自开放网络。有关人、事件和情感的提示是拉取 X 帖子的提示——当 X 面板是重点时,请相应地表达。
  • 面板大小在每次运行中波动。 同样的提示在一次运行中可以引用 35 个网络来源,而在下一次仅为 20 个。用 conversation_id 存储每个捕获,并阅读系列,而不是单次运行。
  • 在系列中保持模式一致。 模式改变推理过程;在一个跟踪提示集中混合模式会使趋势线变得难以解释。
  • 将字段视为可为空。 footnotes 通常为空,Web 来源条目仅偶尔带有 description / image,并且 x_search_results 可能为 []——请读取当前存在的内容。
  • 注意国家列表。 country 是必需的,JP/TW 不可用;选择您报告的市场并在每个系列中保持不变。

结论:两个面板,一个请求

捕获 Grok 简化为一个调用:POST { actor: "scraper.grok", input: { prompt, country, mode } },附上您的 x-api-token,读取 full_response 以获取答案,并将 web_search_resultsx_search_results 作为单独的引用信号展示。保持模式不变,固定国家,存储 conversation_id,同一客户端可以从一个提示扩展到定期的多市场监测程序。

常见问题

问:抓取 Grok 答案合法吗?

该角色捕获公开呈现的答案内容。规则因司法管辖区和平台服务条款而异——请查看相关的服务条款,并为您的用例咨询顾问,尤其是在重新分发捕获内容之前。切勿收集受 GDPR 或 CCPA 保护的个人数据。

问:我如何进行身份验证?

每个请求都携带 x-api-token: <your key>。一个帐户密钥覆盖 scraper.grok 和其他所有 Scrapeless 角色。在 app.scrapeless.com 的免费计划中创建密钥。

问:我需要代理吗?

不需要。住宅出口和地理路由已内置于该角色中;所需的 country 输入是整个配置。

问:为什么需要 mode

Grok 的推理深度会实质性改变答案,因此该角色会明确指出,而不是默默默认。在代码中,值为 API 枚举——MODEL_MODE_FASTMODEL_MODE_EXPERTMODEL_MODE_AUTO

问:我如何将网络引用与 X 引用分开?

它们已经被分开到达:web_search_results 存放开放网络页面,x_search_results 存放 X 帖子。直接读取每个数组。

问:我可以在没有 SDK 或 AI 代理的情况下运行这个吗?

可以。这是纯 HTTP —— curl、Python requests、Node fetch 或任何 HTTP 客户端都可以直接针对 POST /api/v2/scraper/execute 使用。

问:我的 ChatGPT 捕获代码可以用来处理 Grok 吗?

身份验证、端点和信封是相同的。更改角色名称,添加所需的 modecountry,并映射 task_result 键(用 full_response 替代 result_text,用两个面板替代 content_references)。

准备构建您的 AI 答案数据管道吗?

加入我们的社区,申请免费计划,并与构建 AI 答案管道的开发者连接:Discord · Telegram

app.scrapeless.com 注册以获取免费试用积分,并将 scraper.grok 角色指向您的监测程序所需的提示、模式和市场。

在Scrapeless,我们仅访问公开可用的数据,并严格遵循适用的法律、法规和网站隐私政策。本博客中的内容仅供演示之用,不涉及任何非法或侵权活动。我们对使用本博客或第三方链接中的信息不做任何保证,并免除所有责任。在进行任何抓取活动之前,请咨询您的法律顾问,并审查目标网站的服务条款或获取必要的许可。

最受欢迎的文章

目录