主题
获取 Google App Info 任务结果(高级版)
通过本接口,可根据任务 id 获取已提交的 Google Play 应用抓取结果。返回应用 ID、图标、标题、描述、评论数、评分、量、图片、视频、开发信息、相似应用等详细数据。
接口返回的数据与创建任务时传的 app_id、地区、语言等参数对应。系统会尽量高精度模拟请求参数,使返回结果贴近任务创建时的页面数据。你也可以使用响应中的 check_url 在无痕模式下自行核验结果。需要注意的是,用户个性化因素(如搜索历史、偏好设置等)不会纳结果计算。
接口说明
请求方式: GET接口地址:
https://api.seermartech.cn/v3/app_data/google/app_info/task_get/advanced/$id
计费说明
本接口本身用于按任务 ID 获取结果。平台在创建任务时扣费,任务结果在创建后的 30 天可查询。
扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
路径参数
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 任务唯一标识,UUID 格式。可在任务创建后的 30 天随时用于获取结果。 |
沙箱调试
可通过沙箱接口查看该端点支持的完整字段结构,返回为模拟数据,不产生费用:
https://api.seermartech.cn/v3/app_data/google/app_info/task_get/advanced/00000000-0000-0000-0000-000000000000
返回结果说明
接口返回 JSON 数据,顶层 tasks 数组。
顶层字段
| 字段 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本 |
status_code | integer | 接口通用状态码,完整列表请参考文档中的错误码说明 |
status_message | string | 接口通用状态信息 |
time | string | 执行耗时,单位秒 |
cost | float | 当前请求总成本,单位 USD |
tasks_count | integer | tasks 数组中的任务数量 |
tasks_error | integer | 返回错误的任务数量 |
tasks | array | 任务结果数组 |
tasks[] 字段
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 任务 ID,UUID 格式 |
status_code | integer | 任务状态码 |
status_message | string | 任务状态信息 |
time | string | 任务执行耗时,单位秒 |
cost | float | 单任务成本,单位 USD |
result_count | integer | result 数组中的结果数量 |
path | array | 请求路径 |
data | object | 创建任务时提交的原始参数 |
result | array | 结果数组 |
result[] 字段
| 字段 | 类型 | 说明 |
|---|---|---|
app_id | string | 创建任务时传的应用 ID |
se_domain | string | 搜索引擎域名 |
location_code | integer | 地区代码 |
language_code | string | 语言代码 |
check_url | string | 结果核验链接,可用于人工检查页面结果 |
datetime | string | 结果采集时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00 |
se_results_count | integer | 结果总数 |
items_count | integer | items 数组中的数量 |
items | array | 应用结果 |
items[] 字段
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 结果项类型,固定为 google_play_info_organic |
rank_group | integer | 相同 type 分组的排名 |
rank_absolute | integer | 部结果中的绝对排名 |
position | string | 页面位置,当前可能值:left |
app_id | string | 应用 ID |
title | string | 应用标题 |
url | string | Google Play 应用页 URL |
icon | string | 应用图标 URL |
description | string | 应用描述 |
reviews_count | integer | 应用评论总数 |
rating | object | 评分信息 |
main_category | string | 应用主分类 |
installs | string | 页面展示的量文本 |
installs_count | integer | 安量精确数值 |
developer | string | 开发名称 |
developer_id | string | 开发 ID |
developer_url | string | 开发页面 URL |
developer_email | string | 开发邮箱 |
developer_address | string | 开发地址 |
developer_website | string | 开发官网 |
version | string | 当前应用版本 |
minimum_os_version | string | 最低系统要求 |
size | string | 应用大小 |
released_date | string | 首次发布日期,UTC 时间 |
last_update_date | string | 最近更新时间,UTC 时间 |
update_notes | string | 最近一次更新说明 |
images | array | 应用截图/图片 URL 列表 |
videos | array | 应用视频 URL 列表 |
similar_apps | array | 相似应用列表 |
more_apps_by_developer | array | 同开发的应用 |
genres | array | 应用所属分类列表 |
tags | array | 应用标签列表 |
rating 字段结构
| 字段 | 类型 | 说明 |
|---|---|---|
rating_type | string | 评分类型,当前为 Max5 |
value | float | 平均评分值 |
votes_count | integer | 评分/反馈数量;该字段在此场景下可能为 null |
rating_max | integer | 评分上限,Max5 场景下为 5 |
price 字段结构
| 字段 | 类型 | 说明 |
|---|---|---|
current | float | 当前价格 |
regular | float | 原价 |
max_value | float | 最高价格 |
currency | string | 币种,ISO 货币代码 |
is_price_range | boolean | 是否为价格区间 |
displayed_price | string | 页面展示的原始价格字符串 |
is_free | boolean | 是否 |
similar_apps[] / more_apps_by_developer[] 字段结构
| 字段 | 类型 | 说明 |
|---|---|---|
app_id | string | 应用 ID |
title | string | 应用标题 |
url | string | 应用页 URL |
调用示例
curl
bash
id="04011058-0696-0199-0000-2196151a15cb"
curl --location --request GET "https://api.seermartech.cn/v3/app_data/google/app_info/task_get/advanced/${id}" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json"Python
python
import requests
task_id = "06141103-2692-0309-1000-980b778b6d25"
url = f"https://api.seermartech.cn/v3/app_data/google/app_info/task_get/advanced/{task_id}"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
}
response = requests.get(url, headers=headers)
data = response.json
if data.get("status_code") == 20000:
print(data)
else:
print(f"请求失败:{data.get('status_code')} - {data.get('status_message')}")TypeScript
typescript
import axios from "axios";
const taskId = "02231934-2604-0066-2000-570459f04879";
axios({
method: "get",
url: `https://api.seermartech.cn/v3/app_data/google/app_info/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
{
"version": "0.1.20221214",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0895 sec.",
"cost": 0,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"data": {
"se_type": "app_info",
"api": "app_data",
"function": "app_info",
"se": "google",
"app_id": "com.google.android.apps.docs.editors.docs",
"location_code": 2840,
"language_code": "en",
"device": "desktop",
"os": "windows"
},
"result": [
{
"videos": [],
"similar_apps": [],
"more_apps_by_developer": [],
"genres": [],
"tags": []
}
]
}
]
}状态码与异常处理
status_code = 20000表示请求成功。- 任务级状态码位于
tasks[].status_code。 - 建议同时检查:
- 顶层
status_code tasks[].status_codetasks[].result是否为空
如果需要在生产环境中稳定使用,建议建立统一的异常处理机制,覆盖以下:
- 任务不存在或已过期
- 任务尚未完成
- 权限或认证失败
- 平台临时错误或限流
- 返回结构存在空数组或空字段
使用建议
- 通过创建任务接口提交应用抓取任务;
- 获取任务
id后,轮询或延迟调用本接口获取结果; - 若需要批量消费已完成任务,可使用
/v3/app_data/google/app_info/tasks_ready获取就绪任务列表; - 通过
check_url对样本做抽检,确认结果与目标页面一致。
实用场景
- 监控竞品应用页信息变更:定期抓取竞品的评分、评论量、量、版本和更新说明,及时发现产品动作与市场反馈变化。
- 分析应用商店转化素材:提取图标、描述、截图、视频等素材,评估竞品页策略,为 ASO 优化提供依据。
- 跟踪开发矩阵布局:基于
developer、more_apps_by_developer等字段识别同一开发旗下应用组合,竞品产品线研究。 - 构建相似应用推荐池:利用
similar_apps字段批量扩展同类应用集合,用于竞品挖掘、市场扫描和类目研究。 - 评估应用成熟度与维护节奏:结合发布日期、最近更新时间、版本号和更新说明,判断产品迭代频率与活跃运营程度。