Skip to content

提交 Gemini LLM Scraper 任务

接口说明

该接口用于创建 Gemini LLM Scraper 抓取任务,并返回任务 ID。任务结果会基于你指定的**、地区、语言**生成。

接口支持两种执行优级:

  • 1:普通优级(默认)
  • 2:高优级

高优级通常可以更快完成任务,但会产生更高费用。

请求方式

POST https://api.seermartech.cn/v3/ai_optimization/gemini/llm_scraper/task_post

计费说明

该接口在创建任务时扣费,不是在获取结果时扣费。

参考价约 ¥0.0192 / 次 如使用高优级,费用会额外增加。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。

提交规则

  • 请求体为 UTF-8 编码的 JSON
  • POST 请求体格式为 JSON 数组:[{ ... }]
  • 单次 POST 最多可提交 100 个任务
  • 每分钟最多可发起 2000 次 API 调用
  • 如果单次请求中任务数 100,出部分会返回错误 40006

结果获取方式

任务提交成功后,你可以通过返回的唯一任务 ID id 获取结果。

如果在创建任务时设置了以下任一参数,本平台也可以在任务完成后主动通知你:

  • postback_url:任务完成后,向该地址发送结果数据的 POST 请求,结果为 gzip 压缩格式
  • pingback_url:任务完成后,向该地址发送 GET 通知请求

支持在 URL 中使用以下占位变量:

  • $id:任务 ID
  • $tag:你提交的 tag 值(URL 编码后)

示例:

  • https://your-server.com/postbackscript?id=$id
  • https://your-server.com/postbackscript?id=$id&tag=$tag
  • https://your-server.com/pingscript?id=$id&tag=$tag

注意事项:

  • 如果你的服务端在 10 秒未响应,连接会因时被中断
  • 此类任务会 /v3/ai_optimization/gemini/llm_scraper/tasks_ready/ 列表,供后续拉取
  • postback_urlpingback_url 中的特殊字符会被 URL 编码,例如 # 会被编码为 %23

请求参数

任务对象字段说明

字段名类型说明
keywordstring。最多支持 2000 个字符%## 会被解码,+ 会被解码为空格。如果中需要保留 %,请写为 %25;如果需要保留 +,请写为 %2B
priorityinteger任务优级,可选。1 = 普通优级(默认),2 = 高优级。高优级会额外收费。
location_namestring搜索地区完整名称。当未传 location_codelocation_coordinate 时填。传该字段时,无需再传 location_codelocation_coordinate。示例:United States。地区列表可通过 /v3/ai_optimization/gemini/llm_scraper/locations 获取。
location_codeinteger搜索地区编码。当未传 location_namelocation_coordinate 时填。传该字段时,无需再传 location_namelocation_coordinate。示例:2840。地区列表可通过 /v3/ai_optimization/gemini/llm_scraper/locations 获取。
location_coordinatestringGPS 坐标位置。当未传 location_namelocation_code 时填。传该字段时,无需再传 location_namelocation_code。格式为:latitude,longitude,radiuslatitudelongitude 最多 7 位小数;radius 最小值 199(毫米),最大值 199999(毫米)。示例:53.476225,-2.243572,200
language_namestring搜索语言完整名称。当未传 language_code 时填。传该字段时,无需再传 language_code。示例:English。语言列表可通过 /v3/ai_optimization/gemini/llm_scraper/languages 获取。
language_codestring搜索语言编码。当未传 language_name 时填。传该字段时,无需再传 language_name。示例:en。语言列表可通过 /v3/ai_optimization/gemini/llm_scraper/languages 获取。
expand_citationsboolean是否在 HTML 结果中返回展开后的引用栏数据。可选,默认 false
tagstring自定义任务标识。可选,最长 255 个字符。可用于将任务与业务侧记录。提交后会原样出现在响应的 data 对象中。
postback_urlstring任务结果回调地址。可选。任务完成后,本平台会向该地址发送结果数据的 POST 请求(gzip 压缩)。支持 $id$tag 占位符。
postback_datastringpostback_url 的数据类型。若传了 postback_url,则该字段。可选值:advancedhtml
pingback_urlstring任务完成通知地址。可选。任务完成后,本平台会向该地址发送 GET 请求。支持 $id$tag 占位符。

响应结构

接口返回 JSON, tasks 数组,每个任务对应一条提交结果。

顶层字段

字段名类型说明
versionstring当前 API 版本
status_codeinteger通用状态码
status_messagestring通用状态信息
timestring执行耗时,单位秒
costfloat本次请求总费用,单位 USD
tasks_countintegertasks 数组中的任务数
tasks_errorinteger提交失败的任务数
tasksarray任务数组

tasks 数组字段

字段名类型说明
idstring任务唯一标识,UUID 格式
status_codeinteger任务状态码,范围通常为 10000 - 60000
status_messagestring任务状态信息
timestring单任务执行耗时
costfloat单任务费用,单位 USD
result_countintegerresult 数组中的数
patharray请求路径
dataobject你在请求中提交的参数
resultarray任务结果。对于任务提交接口,该值通常为 null

常见状态与错误说明

  • 20000:请求成功
  • 40006:单次 POST 中任务数 100,出部分被拒绝

建议你在接时实现完整的状态码与异常处理逻辑,以便正确处理提交失败、参数错误、回调时等。

请求示例

cURL

bash
curl --location --request POST "https://api.seermartech.cn/v3/ai_optimization/gemini/llm_scraper/task_post" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
 {
 "language_code": "en",
 "location_code": 2840,
 "keyword": "albert einstein"
 },
 {
 "language_name": "English",
 "location_name": "United States",
 "keyword": "albert einstein",
 "priority": 2,
 "tag": "some_string_123",
 "pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag"
 }
]'

Python

python
import requests

url = "https://api.seermartech.cn/v3/ai_optimization/gemini/llm_scraper/task_post"
headers = {
 "Authorization": "Bearer smt_live_YOUR_KEY",
 "Content-Type": "application/json"
}
data = [
 {
 "language_code": "en",
 "location_code": 2840,
 "keyword": "albert einstein"
 },
 {
 "language_name": "English",
 "location_name": "United States",
 "keyword": "albert einstein",
 "priority": 2,
 "pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag"
 }
]

response = requests.post(url, headers=headers, json=data)
print(response.json)

TypeScript

typescript
import axios from "axios";

const postArray = [
 {
 language_code: "en",
 location_code: 2840,
 keyword: "albert einstein"
 },
 {
 language_name: "English",
 location_name: "United States",
 keyword: "albert einstein",
 priority: 2,
 tag: "some_string_123",
 pingback_url: "https://your-server.com/pingscript?id=$id&tag=$tag"
 }
];

axios({
 method: "post",
 url: "https://api.seermartech.cn/v3/ai_optimization/gemini/llm_scraper/task_post",
 headers: {
 Authorization: "Bearer smt_live_YOUR_KEY",
 "Content-Type": "application/json"
 },
 data: postArray
})
 .then((response) => {
 // 输出提交结果
 console.log(response.data);
 })
 .catch((error) => {
 console.error(error);
 });

响应示例

json
{
 "version": "0.1.20260218",
 "status_code": 20000,
 "status_message": "Ok.",
 "time": "0.1040 sec.",
 "cost": 0.0012,
 "tasks_count": 1,
 "tasks_error": 0,
 "tasks": [
 {
 "data": {
 "api": "ai_optimization",
 "function": "llm_scraper",
 "se": "gemini",
 "language_code": "en",
 "location_code": 2840,
 "keyword": "albert einstein",
 "device": "desktop",
 "os": "windows"
 },
 "result": null
 }
 ]
}

响应解读

成功提交后:

  • 顶层 status_code20000
  • tasks 中会返回每个任务的提交信息
  • result 在提交阶段通常为 null
  • 后续应通过任务 ID 获取结果,或依赖 postback_url / pingback_url 接收完成通知

实用场景

  • 批量提交品牌问答抓取任务:围绕品牌词、产品词、竞品词批量创建任务,快速了解 LLM 对不同主题的回答结构与表现。
  • 按地区监测回答差异:针对不同国家或城市提交相同任务,比较 Gemini 在地域维度上的答案差异,为化 SEO 提供依据。
  • 按语言评估覆盖度:对同一主题使用多语言参数抓取结果,识别哪些语言市场覆盖不足,指导本地化建设。
  • 接异步回调自动化处理:通过 pingback_urlpostback_url 在任务完成后自动库,减少轮询开销,提升大规模数据采集效率。
  • 追踪重点的高时效结果:对热点词使用高优级创建任务,更快获得回答结果,支持舆监控和实时策略调整。

统一入口:官网 · LLM API · 控制台