主题
Google店实时查询(高级版)
POST /v3/business_data/google/hotel_info/live/advanced
接口说明
/v3/business_data/google/hotel_info/live/advanced 用于获取指定实体在 Google Hotels 中展示的结构化数据但不限于:
-店服务说明
- 地理位置与周边信息
- 星级与评分
- 设施与热门设施
- 用户评论与评分分布
- 图片
- 实时价格与第三方报价
- 按日期拆分的住宿价格
你需要通过唯一的 hotel_identifier 指定。该值可通过以下方式获取:
- 调用高级版 Google SERP 接口,在响应的
hotels素中获取 - 调用 Business Data API 的搜索端点
/v3/business_data/google/hotel_searches/task_post
返回结果会受到所选 地区 与 语言 的影响。地区和语言列表可分别通过以下接口获取:
/v3/business_data/google/locations/v3/business_data/google/languages
请求方式
POST https://api.seermartech.cn/v3/business_data/google/hotel_info/live/advanced
计费说明
创建任务后将产生扣费。 参考价约 ¥0.0640 / 次。
如果启用 load_prices_by_dates=true,将按基础价格的 2 倍计费。 对应参考价约 ¥0.1280 / 次。
扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
频率限制
每分钟最多可发送 2000 次 API 调用。
请求格式
所有 POST 数据均需使用 JSON(UTF-8 编码)格式提交。 请求体为 JSON 数组,例如:
json
[
{
"location_code": 1023191,
"language_code": "en",
"hotel_identifier": "CgoI-KWyzenM_MV3EAE"
}
]请求参数
任务参数字段说明
| 字段名 | 类型 | 说明 |
|---|---|---|
hotel_identifier | string | 填。唯一标识符,用于指定 Google 搜索中的实体。可通过高级版 Google SERP 接口响应中的 hotels素,或 /v3/business_data/google/hotel_searches/task_post 获取。示例:ChYIq6SB--i6p6cpGgovbS8wN2s5ODZfEAE |
location_name | string | 搜索地区完整名称。若未提供 location_code 或 location_coordinate,则此字段填。提供此字段时,无需再传 location_code 或 location_coordinate。可通过 /v3/business_data/google/locations 获取可用值。示例:London,England,United Kingdom |
location_code | integer | 搜索地区代码。若未提供 location_name 或 location_coordinate,则此字段填。提供此字段时,无需再传 location_name 或 location_coordinate。可通过 /v3/business_data/google/locations 获取可用值。示例:2840 |
location_coordinate | string | 位置 GPS 坐标。若未提供 location_name 或 location_code,则此字段填。格式为 "latitude,longitude",纬度和经度最多 7 位小数。若使用坐标,搜索将在最近的聚地执行。示例:53.476225,-2.243572 |
language_name | string | 搜索语言完整名称。若未提供 language_code,则此字段填。提供此字段时,无需再传 language_code。可通过 /v3/business_data/google/languages 获取可用值。示例:English |
language_code | string | 搜索语言代码。若未提供 language_name,则此字段填。提供此字段时,无需再传 language_name。可通过 /v3/business_data/google/languages 获取可用值。示例:en |
check_in | string | 住日期,可选。默认使用明天日期。不得早于当天。格式:yyyy-mm-dd。示例:2019-01-15 |
check_out | string | 退房日期,可选。默认使用后天日期。该值大于 check_in,且两间隔不得 30 天。格式:yyyy-mm-dd。示例:2019-01-16 |
currency | string | 币种,可选。示例:USD |
adults | integer | 成人数量,可选。默认值为 2。示例:1 |
children | array | 儿童年龄数组,可选。默认不儿童。若 1 名 14 岁儿童,可传 [14];若 1 名 13 岁儿童和 1 名 8 岁儿童,可传 [13,8] |
load_prices_by_dates | boolean | 是否加载按日期拆分的价格,可选。传 true 后,响应中会返回 prices_by_dates 数组。启用后请求费用按基础价格双倍计算 |
prices_start_date | string | 拉取按日期价格的开始日期,可选。使用该字段时同时设置 load_prices_by_dates=true。若未指定,则默认使用 check_in。格式:yyyy-mm-dd。示例:2025-05-20 |
prices_end_date | string | 拉取按日期价格的结束日期,可选。使用该字段时同时设置 load_prices_by_dates=true。若未指定,则默认返回整月的日期价格。格式:yyyy-mm-dd。示例:2025-05-21 |
prices_date_range | string | 预设日期范围,可选。使用该字段时同时设置 load_prices_by_dates=true。如果未设置 prices_start_date,起始日期默认为 check_in。可选值:month、three_months、six_months、year。默认值:month |
tag | string | 自定义任务标识,可选,最长 255 个字符。可用于业务侧请求与结果,响应中的 data 对象会返回该值 |
响应结构
接口返回 JSON 数据,顶层 tasks 数组。
顶层字段说明
| 字段名 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本 |
status_code | integer | 接口通用状态码。完整错误码请参考 /v3/appendix/errors |
status_message | string | 接口通用状态信息 |
time | string | 执行耗时,单位秒 |
cost | float | 当前请求总费用,单位 USD |
tasks_count | integer | tasks 数组中的任务数量 |
tasks_error | integer | 返回错误的任务数 |
tasks | array | 任务结果数组 |
tasks 数组字段说明
| 字段名 | 类型 | 说明 |
|---|---|---|
id | string | 任务唯一标识,UUID 格式 |
status_code | integer | 任务状态码,范围通常为 10000-60000 |
status_message | string | 任务状态信息 |
time | string | 任务执行耗时 |
cost | float | 单任务费用,单位 USD |
result_count | integer | result 数组中的结果数量 |
path | array | 请求路径 |
data | object | 回显请求中提交的参数 |
result | array | 结果数组 |
result 字段说明
基础字段
| 字段名 | 类型 | 说明 |
|---|---|---|
hotel_identifier | string | 请求中提交的标识 |
location_code | integer | 请求中的地区代码 |
language_code | string | 请求中的语言代码 |
check_url | string | 指向搜索引擎结果页的直达链接,可用于结果校验 |
datetime | string | 数据抓取时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00 |
title | string | 店名称 |
stars | integer | 店星级,范围 1-5 |
stars_description | string | 店星级描述 |
address | string | 店地址 |
phone | string | 店联系电话 |
about 对象
| 字段名 | 类型 | 说明 |
|---|---|---|
about | object | 店介绍信息 |
description | string | 店描述 |
sub_descriptions | array | 补描述信息 |
check_in_time | object | 住时间 |
hour | integer | 住小时 |
minute | integer | 住分钟 |
check_out_time | object | 退房时间 |
hour | integer | 退房小时 |
minute | integer | 退房分钟 |
full_address | string | 标准化完整地址 |
domain | string | 店官网域名 |
url | string | 店官网链接 |
amenities 设施信息
| 字段名 | 类型 | 说明 |
|---|---|---|
amenities | array | 店设施分类信息 |
category | string | 标准化设施分类 |
category_label | string | 分类显示名称 |
items | array | 该分类下的设施 |
amenity | string | 标准化设施名称 |
amenity_label | string | 展示名称 |
hint | string | 标准化附加说明 |
hint_label | string | 展示用附加说明 |
is_available | boolean | 该设施是否可用 |
popular_amenities 热门设施
| 字段名 | 类型 | 说明 |
|---|---|---|
popular_amenities | array | 标记为热门的设施信息 |
amenity | string | 标准化设施名称 |
amenity_label | string | 展示名称 |
hint | string | 标准化附加说明 |
hint_label | string | 展示用附加说明 |
is_available | boolean | 该设施是否可用 |
location 位置与周边
| 字段名 | 类型 | 说明 |
|---|---|---|
location | object | 店位置信息 |
neighborhood | string | 所在街区名称 |
neighborhood_description | string | 街区描述 |
maps_url | string | 店地图链接 |
overall_score | float | 综合位置评分,范围 1-5 |
score_by_categories | object | 各维度位置评分 |
overall | float | 综合评分 |
things_to_do | float | 周边可玩性评分 |
restaurants | float | 周边餐饮评分 |
transit | float | 交通评分 |
airport_access | float | 机场可达性评分 |
latitude | float | 纬度 |
longitude | float | 经度 |
location_chain | array | 位置链路 |
location_chain素
| 字段名 | 类型 | 说明 |
|---|---|---|
card_id | string | 卡片标识 |
feature_id | string | 特征标识 |
cid | string | 客户端标识 |
title | string | 位置链名称 |
reviews 评论信息
| 字段名 | 类型 | 说明 |
|---|---|---|
reviews | object | 店评论信息 |
value | float | 综合评分 |
votes_count | integer | 参与评分的用户数 |
mentions | array | 按评价维度拆分的评论信息 |
title | string | 被评价维度名称 |
positive_score | float | 正向评分 |
positive_count | integer | 正面评论数 |
negative_count | integer | 负面评论数 |
total_count | integer | 总评论数 |
visible_by_default | boolean | 是否默认展示 |
rating_distribution | object | 1-5 分的评分分布 |
other_sites_reviews | array | 第三方站点评论 |
other_sites_reviews素
| 字段名 | 类型 | 说明 |
|---|---|---|
title | string | 评论来源站点名称 |
url | string | 评论原始页面链接 |
review_text | string | 评论文本 |
rating | object | 评论中的评分对象 |
rating_type | string | 评分类型,可选:CustomMax、Max5 |
value | float | 评分值 |
votes_count | integer | 投票数 |
rating_max | integer | 评分上限 |
overview_images
| 字段名 | 类型 | 说明 |
|---|---|---|
overview_images | array | 店概览图 URL 数组 |
prices 价格信息
| 字段名 | 类型 | 说明 |
|---|---|---|
prices | object | 店价格 |
price | integer | 当前每晚价格 |
price_without_discount | integer | 未打折时每晚价格 |
currency | string | 价格币种;默认使用 USD,除非在请求中指定 |
discount_text | string | 折扣文案 |
check_in | string | 住时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00 |
check_out | string | 退房时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00 |
visitors | integer | 住人数 |
items | array | 第三方价格来源列表,类型为 hotel_info_price |
prices.items素
| 字段名 | 类型 | 说明 |
|---|---|---|
type | string | 固定值:hotel_info_price |
title | string | 第三方站点名称 |
price | integer | 第三方站点每晚价格 |
currency | string | 价格币种 |
url | string | 第三方价格页面链接 |
domain | string | 第三方域名 |
is_paid | boolean | 是否为付费预订链接;true 表示广告,false 表示预订链接 |
official_site | boolean | 是否带有 “Official Site” 标签 |
free_cancellation_until | string | 可取消的截止时间;若不可取消则为 null |
offers | array | 特色报价列表 |
offers素
| 字段名 | 类型 | 说明 |
|---|---|---|
type | string | 固定值:hotel_info_price_offer |
title | string | 价格方案标题 |
price | integer | 方案价格 |
currency | string | 币种 |
url | string | 报价页面链接 |
max_visitors | integer | 该方案支持的最大人数 |
offer_images | array | 方案图片 URL 数组 |
free_cancellation_until | string | 取消截止时间;若不支持则为 null |
prices_by_dates
| 字段名 | 类型 | 说明 |
|---|---|---|
prices_by_dates | array | 按日期返回的价格数据;在 load_prices_by_dates=true 时返回 |
price | integer | 指定日期的每晚价格 |
currency | string | 币种,例如 USD |
check_in_date | string | 住日期时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00 |
check_out_date | string | 退房日期时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00 |
请求示例
cURL
bash
curl --location --request POST "https://api.seermartech.cn/v3/business_data/google/hotel_info/live/advanced" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"location_code": 1023191,
"language_code": "en",
"hotel_identifier": "CgoI-KWyzenM_MV3EAE"
}
]'Python
python
import requests
url = "https://api.seermartech.cn/v3/business_data/google/hotel_info/live/advanced"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
}
data = [
{
"location_code": 1023191,
"language_code": "en",
"hotel_identifier": "CgoI-KWyzenM_MV3EAE"
},
{
"location_name": "New York,New York,United States",
"language_name": "English",
"hotel_identifier": "CgoI-KWyzenM_MV3EAE"
}
]
response = requests.post(url, headers=headers, json=data)
print(response.json)TypeScript
typescript
import axios from "axios";
const postArray = [
{
location_name: "New York,New York,United States",
language_name: "English",
hotel_identifier: "CgoI-KWyzenM_MV3EAE"
}
];
axios({
method: "post",
url: "https://api.seermartech.cn/v3/business_data/google/hotel_info/live/advanced",
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.20260420",
"status_code": 20000,
"status_message": "Ok.",
"time": "2.4033 sec.",
"cost": 0.004,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"data": {
"api": "business_data",
"function": "hotel_info",
"se": "google",
"location_name": "New York,New York,United States",
"language_name": "English",
"hotel_identifier": "ChYIq6SB--i6p6cpGgovbS8wN2s5ODZfEAE",
"se_type": "hotel_info",
"device": "desktop",
"os": "windows"
},
"result": [
{
"check_in_time": {
"hour": 15,
"minute": 0
},
"check_out_time": {
"hour": 11,
"minute": 0
},
"full_address": "President Hotel Athens, Leof. Kifisias 43, Athina 115 23, Greece",
"domain": "president.gr",
"url": "https://president.gr/",
"amenities": [
{
"category": "food_and_drink",
"category_label": "Food & drink",
"items": []
}
],
"popular_amenities": [],
"location": {
"neighborhood": "Central Athens Regional Unit",
"neighborhood_description": "Busy Central Athens is known for classical landmarks...",
"maps_url": "https://maps.google.com/maps?...",
"overall_score": 3.1,
"score_by_categories": {
"overall": 3.1,
"things_to_do": 3.2,
"restaurants": 3.3,
"transit": 4.1,
"airport_access": 3.9
},
"latitude": 37.989081399999996,
"longitude": 23.7638777,
"location_chain": []
},
"reviews": {
"value": 4.2,
"votes_count": 8552,
"mentions": [],
"rating_distribution": {
"1": 5,
"2": 3,
"3": 10,
"4": 26,
"5": 56
},
"other_sites_reviews": []
},
"overview_images": [],
"prices": {
"price": 168,
"price_without_discount": null,
"currency": "USD",
"discount_text": null,
"check_in": "2026-04-25 00:00:00 +00:00",
"check_out": "2026-04-26 00:00:00 +00:00",
"visitors": 2,
"items": [
{
"type": "hotel_info_price",
"title": "Expedia.com",
"price": 220,
"currency": "USD",
"url": "https://google.com/aclk?...",
"domain": "google.com",
"is_paid": true,
"official_site": false,
"free_cancellation_until": null,
"offers": []
},
{
"type": "hotel_info_price",
"title": "Booking.com",
"price": 221,
"currency": "USD",
"url": "https://www.booking.com/...",
"domain": "www.booking.com",
"is_paid": false,
"official_site": false,
"free_cancellation_until": null,
"offers": null
}
],
"prices_by_dates": null
}
}
]
}
]
}状态码与错误处理
- 顶层
status_code表示整个请求的处理状态 tasks[].status_code表示任务的处理结果- 建议同时校验:
- HTTP 状态码
- 顶层
status_code - 任务级
tasks[].status_code
常见成功状态:
| 状态码 | 说明 |
|---|---|
20000 | 请求成功 |
完整错误码与信息说明请参考 /v3/appendix/errors。 建议在集成时设计完善的异常处理机制,以应对参数错误、限频、任务失败或返回结果缺失等。
使用建议
- 优缓存
hotel_identifier:该值是查询的核心键,建议通过搜索或 SERP 数据建立映射表。 - 地区与语言会影响结果:不同国家/语言下,名称、评论摘要、价格来源和展示可能不同。
- 按日期价格适合趋势分析:若你需要做价格波动监控,可启用
load_prices_by_dates=true,但需注意费用翻倍。 - 价格数据需结合
official_site与is_paid使用:适合区分官网直销、广告位报价与自然预订链接。 - 儿童参数传年龄数组:
children不是人数,而是儿童年龄列表。
实用场景
- 监控价格差异:抓取同一在官网、OTA 与广告位中的报价差异,识别价格倒挂与渠道冲突。
- 分析卖点展示:提取设施、热门设施、描述与图片信息,用于竞品对比和落地页优化。
- 评估地理位置竞争力:基于周边餐饮、交通、机场可达性等评分,判断在商圈中的位置优势。
- 跟踪口碑变化:监控总评分、投票数、评分分布及评论维度,及时发现服务短板或评价改善趋势。
- 构建日期价格曲线:启用按日期价格返回后,生成未来一个月到一年的住宿价格趋势,用于收益管理和投放决策。