主题
通过任务 ID 获取 Google 以图搜图 SERP 高级结果
接口信息
GET https://api.seermartech.cn/v3/serp/google/search_by_image/task_get/advanced/$id
本接口用于根据任务 ID 获取 Google 以图搜图(Search by Image)SERP 高级结果。任务提交成功后,可在 30 天随时查询结果。
任务结果查询不单独计费在提交任务时计费。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
请求参数
路径参数:
| 参数 | 类型 | 说明 |
|---|---|---|
id | string | 任务唯一标识,UUID 格式。任务提交成功后,可在 30 天使用该 ID 查询结果。 |
请求无需提交请求体。
请求示例
curl
bash
id="02261816-2027-0066-0000-c27d02864073"
curl --location --request GET \
"https://api.seermartech.cn/v3/serp/google/search_by_image/task_get/advanced/${id}" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json"Python
python
import requests
task_id = "02261816-2027-0066-0000-c27d02864073"
response = requests.get(
f"https://api.seermartech.cn/v3/serp/google/search_by_image/task_get/advanced/{task_id}",
headers={
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
},
)
print(response.json())TypeScript
typescript
import axios from "axios";
const taskId = "02231934-2604-0066-2000-570459f04879";
axios
.get(
`https://api.seermartech.cn/v3/serp/google/search_by_image/task_get/advanced/${taskId}`,
{
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
},
}
)
.then((response) => {
// 处理结果数据
console.log(response.data);
})
.catch((error) => {
console.error(error.response?.data || error.message);
});响应结构
接口返回 JSON 数据,顶层 tasks 数组。
顶层字段
| 字段 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本。 |
status_code | integer | 通用响应状态码。成功通常为 20000。 |
status_message | string | 通用状态说明。 |
time | string | 请求执行耗时,单位为秒。 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
tasks_count | integer | tasks 数组中的任务数量。 |
tasks_error | integer | tasks 数组中返回错误的任务数量。 |
tasks | array | 任务结果数组。 |
tasks 任务字段
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 任务唯一标识,UUID 格式。 |
status_code | integer | 任务状态码,通常在 10000 至 60000 范围。 |
status_message | string | 任务状态说明。 |
time | string | 任务执行耗时,单位为秒。 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
result_count | integer | result 数组中的数量。 |
path | array | 请求 URL 路径。 |
data | object | 创建任务时提交的参数。 |
result | array | SERP 结果数组。 |
data 请求参数回显
data 对象创建任务时提交的参数,常见字段如下:
| 字段 | 类型 | 说明 |
|---|---|---|
api | string | API 类型,例如 serp。 |
function | string | API 方法,例如 task_get。 |
se | string | 搜索引擎,例如 google。 |
se_type | string | 搜索类型,例如 search_by_image。 |
image_url | string | 用于以图搜图的图片 URL。 |
keyword | string | 与图片的搜索,如响应中提供。 |
location_code | integer | 地理位置代码。 |
language_code | string | 语言代码。 |
device | string | 设备类型,例如 desktop。 |
os | string | 操作系统,例如 windows。 |
priority | integer | 任务优级。 |
group_organic_results | boolean | 是否将同一自然结果组中的结果合并。 |
calculate_rectangles | boolean | 是否计算 SERP素在页面中的矩形坐标。 |
result 结果字段
| 字段 | 类型 | 说明 |
|---|---|---|
image_url | string | 请求中指定的图片 URL。 |
keyword | string | Google 根据图片出的。 |
type | string | 搜索类型。 |
se_domain | string | 搜索引擎域名。 |
location_code | integer | 地理位置代码。 |
language_code | string | 语言代码。 |
check_url | string | 对应的搜索结果页面 URL,可用于核对返回结果。 |
datetime | string | 获取结果的时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。 |
spell | object | 搜索引擎自动纠错信息。 |
refinement_chips | object | 搜索细化选项。 |
item_types | array | SERP 中的结果类型,例如 organic、images。 |
se_results_count | integer | SERP 中的结果总数。 |
items_count | integer | items 数组中返回的结果数量。 |
items | array | SERP 结果数组。 |
spell 自动纠错
| 字段 | 类型 | 说明 |
|---|---|---|
keyword | string | 搜索引擎纠正后的,结果将基于该返回。 |
type | string | 自动纠错类型。可选值:did_you_mean、showing_results_for、no_results_found_for、including_results_for。 |
refinement_chips 搜索细化选项
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 素类型,固定为 refinement_chips。 |
xpath | string | 素在页面中的 XPath。 |
items | array | 搜索细化选项列表。 |
items素字段:
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 素类型,固定为 refinement_chips_element。 |
title | string | 细化选项标题。 |
url | string | 带细化参数的搜索 URL。 |
domain | string | SERP 中显示的域名。 |
options | array | 进一步的搜索细化选项。 |
options素字段:
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 素类型,固定为 refinement_chips_option。 |
title | string | 选项标题。 |
url | string | 带细化参数的搜索 URL。 |
domain | string | SERP 中显示的域名。 |
items SERP素
通用 SERP 字段
不同 SERP素可能以下字段:
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 素类型,例如 organic、images。 |
rank_group | integer | 同类型中的组排名。不同类型之间不计该排名。 |
rank_absolute | integer | 在整个 SERP 中的绝对排名。 |
position | string | 素在 SERP 中的对齐位置,可为 left 或 right。 |
xpath | string | 素的 XPath。 |
domain | string | 结果域名。 |
title | string | 结果标题。 |
url | string | 结果 URL。 |
cache_url | string | 页面缓存 URL。 |
related_search_url | string | 搜索 URL。 |
breadcrumb | string | SERP 中显示的面屑路径。 |
website_name | string | 网站名称。 |
is_image | boolean | 是否图片。 |
is_video | boolean | 是否视频。 |
is_featured_snippet | boolean | 是否为精选摘要。 |
is_malicious | boolean | 是否被标记为恶意结果。 |
is_web_story | boolean | 是否为 Google Web Story。 |
description | string | 结果描述。 |
pre_snippet | string | 结果描述前附加的信息。 |
extended_snippet | string | 结果描述后附加的信息。 |
images | array | 结果的图片。 |
amp_version | boolean | 是否存在 AMP 版本。 |
rating | object | 结果评分信息。 |
price | object | 商品或服务价格信息。 |
highlighted | array | 结果描述中以粗体突出显示的词语。 |
links | array | 站点链接;没有时为 null。 |
faq | object | 常见问题扩展;没有时为 null。 |
extended_people_also_search | array | “用户还搜索了”扩展结果。 |
about_this_result | object | “此结果”信息面板。 |
related_result | array | 同一域名下的结果。 |
timestamp | string | 结果发布时间,UTC 格式。 |
rectangle | object | SERP素在页面中的位置和尺寸;未启用 calculate_rectangles 时为 null。 |
organic 自然结果
当 type 为 organic 时,表示自然搜索结果。除通用字段外,还可能:
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 organic。 |
rank_group | integer | 自然结果组排名。 |
rank_absolute | integer | 在整个 SERP 中的绝对排名。 |
position | string | 素对齐位置,可为 left 或 right。 |
domain | string | 结果域名。 |
title | string | 结果标题。 |
url | string | 结果 URL。 |
description | string | 结果描述。 |
related_result | array | 同一域名下的结果。 |
当创建任务时将 group_organic_results 设置为 false,可以将自然结果中的结果以独立的 organic素形式返回。
images 图片结果模块
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 images。 |
rank_group | integer | 图片模块在同类型结果中的组排名。 |
rank_absolute | integer | 图片模块在 SERP 中的绝对排名。 |
position | string | 素对齐位置,可为 left 或 right。 |
xpath | string | 素 XPath。 |
title | string | 图片模块标题。 |
url | string | URL。 |
items | array | 图片模块中的图片;没有时为 null。 |
images.items素字段:
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 images_element。 |
alt | string | 图片 alt 文本。 |
url | string | 图片所属资源页面 URL。 |
image_url | string | 压缩图片或缩略图 URL。 |
图片
图片结果及自然结果中的 images 数组可能以下字段:
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 images_element。 |
alt | string | 图片的 alt 标签。 |
url | string | 页面 URL。 |
image_url | string | 图片 URL。若原始来源不可用,可能返回本平台存储的图片地址。 |
related_image_searches 图片搜索
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 related_image_searches_element。 |
title | string | 图片搜索标题,也表示可用于细化搜索的。 |
alt | string | 推荐图片的 alt 文本。 |
url | string | 推荐图片的原始页面 URL。 |
image_url | string | 推荐图片的压缩图片 URL。 |
没有图片搜索时,该字段为 null。
评分字段 rating
| 字段 | 类型 | 说明 |
|---|---|---|
rating_type | string | 评分类型,可为 Max5、Percents 或 CustomMax。 |
value | float | 评分值。 |
votes_count | integer | 评价数量。 |
rating_max | integer | 当前评分类型对应的最大值。 |
价格字段 price
| 字段 | 类型 | 说明 |
|---|---|---|
current | float | 当前价格。 |
regular | float | 未折扣的常规价格。 |
max_value | float | 价格范围中的最高价格。 |
currency | string | 价格货币的 ISO 代码。 |
is_price_range | boolean | 是否为价格区间。 |
displayed_price | string | SERP 中原始展示的价格文本。 |
站点链接字段 links
links 为部分自然结果下方展示的站点链接数组;没有站点链接时为 null。
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 link_element。 |
title | string | 站点链接标题。 |
description | string | 站点链接描述。 |
url | string | 站点链接 URL。 |
domain | string | 站点链接域名。 |
常见问题字段 faq
没有 FAQ 扩展时,faq 为 null。
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 faq_box。 |
items | array | FAQ 问答项。 |
faq.items 字段:
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 faq_box_element。 |
title | string | 问题标题。 |
description | string | 展开后的答案。 |
links | array | FAQ 项中的链接。 |
faq.items.links 字段:
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 link_element。 |
title | string | 链接锚文本。 |
url | string | 链接 URL。 |
domain | string | 链接域名。 |
about_this_result 结果信息面板
该对象搜索引擎“此结果”面板中的补信息。没有该信息时为 null。
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 about_this_result_element。 |
url | string | 结果 URL。 |
source | string | 补信息来源。 |
source_info | string | 来源补说明,例如网站简介。 |
source_url | string | 来源的完整信息 URL。 |
language | string | 结果语言。 |
location | string | 结果适用的地理位置。 |
search_terms | array | 结果中匹到的搜索词。 |
related_terms | array | 结果中出现的搜索词。 |
related_result 结果
related_result 表示主结果摘要中的同域名结果。字段:
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 固定为 related_result。 |
xpath | string | 素 XPath。 |
domain | string | 结果域名。 |
title | string | 结果标题。 |
url | string | 结果 URL。 |
cache_url | string | 页面缓存 URL。 |
related_search_url | string | 搜索 URL。 |
breadcrumb | string | 面屑路径。 |
is_image | boolean | 是否图片。 |
is_video | boolean | 是否视频。 |
description | string | 结果描述。 |
pre_snippet | string | 描述前附加的信息。 |
extended_snippet | string | 描述后附加的信息。 |
images | array | 结果中的图片。 |
amp_version | boolean | 是否存在 AMP 版本。 |
rating | object | 评分信息。 |
price | object | 价格信息。 |
highlighted | array | 描述中突出显示的词语。 |
about_this_result | object | “此结果”信息。 |
timestamp | string | 结果发布时间,UTC 格式。 |
rectangle 坐标字段
当创建任务时将 calculate_rectangles 设置为 true,接口会返回 SERP素的位置和尺寸;否则 rectangle 为 null。
| 字段 | 类型 | 说明 |
|---|---|---|
x | integer | 素左上角的横坐标。 |
y | integer | 素左上角的纵坐标。 |
width | integer | 素宽度,单位为像素。 |
height | integer | 素高度,单位为像素。 |
坐标原点为页面左上角。
响应示例
json
{
"version": "0.1.20230825",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0957 sec.",
"cost": 0,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "02261816-2027-0066-0000-c27d02864073",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0821 sec.",
"cost": 0,
"result_count": 1,
"path": [
"v3",
"serp",
"google",
"search_by_image",
"task_get",
"advanced"
],
"data": {
"api": "serp",
"function": "task_get",
"se": "google",
"se_type": "search_by_image",
"language_code": "en",
"location_code": 2840,
"image_url": "https://example.com/image.jpg",
"priority": 2,
"device": "desktop",
"os": "windows"
},
"result": [
{
"image_url": "https://example.com/image.jpg",
"keyword": "wall art",
"type": "search_by_image",
"se_domain": "google.com",
"location_code": 2840,
"language_code": "en",
"check_url": "https://www.google.com/searchbyimage",
"datetime": "2023-08-25 12:57:46 +00:00",
"spell": null,
"refinement_chips": null,
"item_types": [
"organic",
"images"
],
"se_results_count": 0,
"items_count": 61,
"items": [
{
"type": "organic",
"rank_group": 1,
"rank_absolute": 2,
"position": "left",
"xpath": null,
"domain": "example.com",
"title": "示例搜索结果",
"url": "https://example.com/result",
"cache_url": null,
"related_search_url": null,
"breadcrumb": null,
"website_name": "Example",
"is_image": true,
"is_video": false,
"is_featured_snippet": false,
"is_malicious": false,
"is_web_story": false,
"description": null,
"pre_snippet": null,
"extended_snippet": null,
"images": [],
"amp_version": false,
"rating": null,
"price": null,
"highlighted": null,
"links": null,
"faq": null,
"extended_people_also_search": null,
"about_this_result": null,
"related_result": null,
"timestamp": null,
"rectangle": null
}
]
}
]
}
]
}状态码与异常处理
响应中的 status_code 和 tasks[].status_code 用于判断请求及任务执行状态。建议客户端同时检查:
- HTTP 状态码;
- 顶层
status_code; tasks[].status_code;tasks[].result是否为空;tasks[].status_message中的错误说明。
成功响应通常使用状态码 20000。完整状态码列表请参考错误码文档。
使用 Sandbox
可以使用 Sandbox 查看该端点可能返回的 SERP素及扩展字段。Sandbox 不产生费用。
text
https://sandbox.seermartech.cn/v3/serp/google/search_by_image/task_get/advanced/00000000-0000-0000-0000-000000000000Sandbox 返回的数据为模拟数据用于调试响应结构。
实用场景
- 识别竞品图片的搜索页面:通过商品或广告图片反查自然结果,发现竞品分销页面、转载页面和品牌机会。
- 追踪图片的外部引用:批量查询企业视觉素材的搜索结果,定位未经授权转载或可能带来反向链接的外部页面。
- 分析图片驱动的:提取搜索引擎根据图片识别出的,为图片 SEO、文件命名和替代文本优化提供依据。
- 监测视觉搜索中的竞品排名:记录
organic和images结果的排名、标题及 URL,评估商品图片在以图搜图场景中的可见度。 - 挖掘图片搜索需求:利用
related_image_searches获取和图片,扩展选题、图片素材和长尾搜索词。