主题
Google Finance Quote 实时 HTML
POST /v3/serp/google/finance_quote/live/html
本接口通过实时请求获取 Google Finance「Quote」标签页的原始 HTML。查询结果由请求参数决定股票代码(keyword)、地区和语言。
请求方式: POST
接口路径: /v3/serp/wp/v2/live/html
> /v3/serp/wp/v2/live/html 为本页容路由,请按本平台分的接口权限调用,不要将 /wp/ 视为业务类型名称。
计费说明
每次请求按任务计费。
- 参考价约 ¥0.0216 / 次
- 实扣费以响应头
X-SeerMarTech-Charge-CNY为准 - 每次 Live SERP API 请求只能 1 个任务 平台限流以认证说明中的 30/60/120 次/分钟规则为准
- 请求体使用 UTF-8 编码的 JSON 数组格式
请求地址
http
POST https://api.seermartech.cn/v3/serp/wp/v2/live/html
Authorization: Bearer smt_live_YOUR_KEY
Content-Type: application/json请求参数
主要参数
| 参数名 | 类型 | 填 | 说明 |
|---|---|---|---|
keyword | string | 是 | 股票代码或证券代码。用于指定特定证券交易所中的股票或证券,最多 700 个字符。返回结果中的编码会被解码,+ 会被解码为空格。若中需要使用 %,请传 %25;若需要使用 +,请传 %2B。 |
location_code | integer | 条件填 | 搜索引擎地区编码。如果未指定 location_name,则传此参数。传此参数后无需再传 location_name。例如:2840。 |
language_code | string | 条件填 | 搜索引擎语言编码。如果未指定 language_name,则传此参数。传此参数后无需再传 language_name。例如:en。 |
device | string | 否 | 设备类型。可选值:desktop。 |
> 地区编码可通过以下接口获取:
> https://api.seermartech.cn/v3/serp/google/locations > > 语言编码可通过以下接口获取:
> https://api.seermartech.cn/v3/serp/google/languages
附加参数
| 参数名 | 类型 | 填 | 说明 |
|---|---|---|---|
location_name | string | 条件填 | 搜索引擎地区的完整名称。如果未指定 location_code,则传此参数。传此参数后无需再传 location_code。例如:London,England,United Kingdom。 |
language_name | string | 条件填 | 搜索引擎语言的完整名称。如果未指定 language_code,则传此参数。传此参数后无需再传 language_code。例如:English。 |
os | string | 否 | 设备操作系统。可选值:windows。 |
tag | string | 否 | 用户自定义任务标识,最多 255 个字符。可用于任务与结果,提交的值会原样返回在响应的 data 对象中。 |
window | string | 否 | Google Finance 行图表的时间范围。可选值:1D、5D、1M、6M、YTD、1Y、5Y、MAX。默认值:1D。 |
请求示例
cURL
bash
curl --location --request POST \
"https://api.seermartech.cn/v3/serp/wp/v2/live/html" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"language_code": "en",
"location_code": 2840,
"keyword": "NASDAQ-100",
"device": "desktop",
"window": "1D",
"tag": "tag1"
}
]'Python
python
import requests
url = "https://api.seermartech.cn/v3/serp/wp/v2/live/html"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
}
# 每次请求只能提交一个任务
payload = [
{
"language_code": "en",
"location_code": 2840,
"keyword": "NASDAQ-100",
"device": "desktop",
"window": "1D",
"tag": "tag1",
}
]
response = requests.post(url, headers=headers, json=payload)
result = response.json()
if result.get("status_code") == 20000:
print(result)
else:
print(
"请求失败,错误码:%s,错误信息:%s"
% (result.get("status_code"), result.get("status_message"))
)TypeScript
typescript
import axios from "axios";
const response = await axios.post(
"https://api.seermartech.cn/v3/serp/wp/v2/live/html",
[
{
language_code: "en",
location_code: 2840,
keyword: "NASDAQ-100",
device: "desktop",
window: "1D",
tag: "tag1",
},
],
{
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
},
}
);
console.log(response.data);响应结构
接口返回 JSON 数据,顶层 tasks 数组。
顶层字段
| 字段名 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本。 |
status_code | integer | 请求级状态码。 |
status_message | string | 请求级说明信息。 |
time | string | 请求执行耗时,单位为秒。 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
tasks_count | integer | tasks 数组中的任务总数。 |
tasks_error | integer | tasks 数组中执行失败的任务数。 |
tasks | array | 任务结果数组。 |
任务字段
| 字段名 | 类型 | 说明 |
|---|---|---|
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 | 本次 POST 请求中提交的参数。 |
result | array | 结果数组。 |
result 字段
| 字段名 | 类型 | 说明 |
|---|---|---|
keyword | string | 请求中的股票代码或证券代码。返回时已对编码进行解码,+ 会被转换为空格。 |
type | string | 请求中的搜索引擎类型。 |
se_domain | string | 请求中的搜索引擎域名。 |
location_code | integer | 地区编码。 |
language_code | string | 语言编码。 |
datetime | string | 获取结果的日期和时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。例如:2019-11-15 12:57:46 +00:00。 |
items_count | integer | items 数组中的结果数量。 |
items | array | SERP 中发现的搜索结果。 |
page | integer | 返回的 HTML 页序号。 |
date | string | HTML 页面抓取日期和时间,格式为 year-month-date:minutes:UTC_difference_hours:UTC_difference_minutes。 |
html | string | 获取到的原始 HTML 页面。 |
响应示例
json
{
"version": "0.1.20200130",
"status_code": 20000,
"status_message": "Ok.",
"time": "7.7543 sec.",
"cost": 0.0216,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "070ตัว-example-task-id",
"status_code": 20000,
"status_message": "Ok.",
"time": "7.7543 sec.",
"cost": 0.0216,
"result_count": 1,
"path": [
"v3",
"serp",
"wp",
"v2",
"live",
"html"
],
"data": {
"api": "serp",
"function": "live",
"se": "wp",
"se_type": "v2",
"language_name": "English",
"location_name": "United States",
"keyword": "NASDAQ-100",
"tag": "tag1",
"device": "desktop",
"os": "windows",
"window": "1D"
},
"result": [
{
"keyword": "NASDAQ-100",
"type": "v2",
"se_domain": "google.com",
"location_code": 2840,
"language_code": "en",
"datetime": "2019-11-15 12:57:46 +00:00",
"items_count": 1,
"items": [
{
"page": 1,
"date": "2019-11-15 12:57:46 +00:00",
"html": "<html>...</html>"
}
]
}
]
}
]
}状态码与异常处理
请根据 status_code 和 status_message 判断请求及任务是否成功:
- 顶层
status_code用于判断整个 API 请求是否成功。 tasks[].status_code用于判断任务是否成功。tasks_error表示返回错误的任务数量。- 建议在业务系统中实现时、空结果、鉴权失败、参数错误和平台响应异常等的重试或降级处理。
完整错误码请参考本平台错误码文档。
实用场景
- 抓取指定股票的页 HTML,保留 Google Finance Quote 页面原始,便于建立自有数据解析流程。
- 批量监控股票代码对应的搜索结果页面,对比不同地区、语言和设备下的展示差异,支持化 SEO 与市场研究。
- 切换
window时间范围获取图表页面,分析 1 日、1 月及长期区间的页面变化,金融运营。 - 使用
tag标记业务任务,将股票监控请求与客户、项目或数据批次,提升异步结果归档和追踪效率。 - 按地区和语言采集 Google Finance 页面,验证本地化金融页面展现,为海外市场策略和竞品分析提供数据。