主题
Google 对应的产品与服务类别
POST /v3/dataforseo_labs/google/categories_for_keywords/live
本接口使用 POST 方法,路径为:
/v3/dataforseo_labs/google/categories_for_keywords/live
根据指定返回 Google 的产品与服务类别。单次请求最多可提交 1,000 个,每个 Live API 请求只能一个任务。
支持的语言可通过以下接口查询:
/v3/dataforseo_labs/google/categories_for_keywords/languages
完整的产品与服务类别列表可通过参考文档获取。
计费与调用限制
- 每次请求都会产生费用。
- 实扣费以响应头
X-SeerMarTech-Charge-CNY为准。 - 每分钟最多可发送 2,000 次 API 调用。
- 每个 Live API 请求只能一个任务。
- 同时发送的请求数量最多为 30 个。
- 所有 POST 数据使用 UTF-8 编码的 JSON 格式。
- 请求体是 JSON 数组,任务参数放在数组中。
请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
keywords | array | 目标。填。使用 UTF-8 编码,最多支持 1,000 个。将转换为小写格式。 |
language_name | string | 语言完整名称。当未指定 language_code 时填。例如:English。 |
language_code | string | 语言代码。当未指定 language_name 时填。例如:en。 |
tag | string | 用户自定义的任务标识,可选。最大长度为 255 个字符。可用于识别任务并匹响应结果,提交的值会原样返回在响应的 data 对象中。 |
language_name 和 language_code 至少需要提供一个。可调用以下接口获取可用语言及名称、代码:
/v3/dataforseo_labs/google/categories_for_keywords/languages
请求示例
cURL
bash
curl --location --request POST \
"https://api.seermartech.cn/v3/dataforseo_labs/google/categories_for_keywords/live" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"keywords": [
"dentist new york",
"pizza brooklyn",
"car dealer los angeles"
],
"language_name": "English",
"tag": "category-analysis-001"
}
]'TypeScript
typescript
import axios from "axios";
const postData = [
{
keywords: [
"dentist new york",
"pizza brooklyn",
"car dealer los angeles"
],
language_name: "English",
tag: "category-analysis-001"
}
];
axios({
method: "post",
url: "https://api.seermartech.cn/v3/dataforseo_labs/google/categories_for_keywords/live",
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
},
data: postData
})
.then((response) => {
console.log(response.data);
})
.catch((error) => {
console.error(error.response?.data || error.message);
});Python
python
import requests
url = "https://api.seermartech.cn/v3/dataforseo_labs/google/categories_for_keywords/live"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json"
}
post_data = [
{
"keywords": [
"dentist new york",
"pizza brooklyn",
"car dealer los angeles"
],
"language_name": "English",
"tag": "category-analysis-001"
}
]
response = requests.post(url, headers=headers, json=post_data)
if response.status_code == 200:
result = response.json()
print(result)
else:
print(f"HTTP 错误:{response.status_code},消息:{response.text}")PHP
php
<?php
$url = 'https://api.seermartech.cn/v3/dataforseo_labs/google/categories_for_keywords/live';
$postData = [
[
'keywords' => [
'dentist new york',
'pizza brooklyn',
'car dealer los angeles'
],
'language_name' => 'English',
'tag' => 'category-analysis-001'
]
];
$ch = curl_init($url);
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer smt_live_YOUR_KEY',
'Content-Type: application/json'
],
CURLOPT_POSTFIELDS => json_encode($postData, JSON_UNESCAPED_UNICODE)
]);
$response = curl_exec($ch);
if ($response === false) {
echo '请求失败:' . curl_error($ch);
} else {
echo $response;
}
curl_close($ch);响应结构
接口返回 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 | 请求路径信息。 |
data | object | 创建任务时提交的参数。 |
result | array | 任务结果数组。 |
data 字段
data 对象通常以下请求信息:
| 字段 | 类型 | 说明 |
|---|---|---|
api | string | API 产品标识,例如 dataforseo_labs。 |
function | string | 功能名称,例如 categories_for_keywords。 |
se_type | string | 搜索引擎类型,例如 google。 |
language_code | string | 请求使用的语言代码。 |
keywords | array | 请求中提交的列表。 |
tag | string | 请求中提交的自定义任务标识,如有设置。 |
result 字段
| 字段 | 类型 | 说明 |
|---|---|---|
language_code | string | 请求使用的语言代码。如果没有可用数据,则返回 null。 |
total_count | integer | 数据库中与请求的结果总数。 |
items_count | integer | items 数组中返回的结果数量。 |
items | array | 含及对应产品、服务类别的结果列表。 |
items 字段
| 字段 | 类型 | 说明 |
|---|---|---|
keyword | string | 请求中的。 |
categories | array | 与该的产品和服务类别列表。 |
响应示例
json
{
"version": "0.1.20240626",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0969 sec.",
"cost": 0.00103,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "01234567-89ab-cdef-0123-456789abcdef",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0821 sec.",
"cost": 0.00103,
"result_count": 1,
"path": [
"v3",
"dataforseo_labs",
"google",
"categories_for_keywords",
"live"
],
"data": {
"api": "dataforseo_labs",
"function": "categories_for_keywords",
"se_type": "google",
"language_code": "en",
"keywords": [
"dentist new york",
"pizza brooklyn",
"car dealer los angeles"
],
"tag": "category-analysis-001"
},
"result": [
{
"language_code": "en",
"total_count": 3,
"items_count": 3,
"items": [
{
"keyword": "dentist new york",
"categories": []
},
{
"keyword": "pizza brooklyn",
"categories": []
},
{
"keyword": "car dealer los angeles",
"categories": []
}
]
}
]
}
]
}状态码与错误处理
- 顶层
status_code用于表示本次 API 请求的整体处理状态。 - 任务级
status_code用于表示任务的处理状态。 20000表示请求成功。- 应用程序应同时检查 HTTP 状态码、顶层
status_code、任务级status_code和tasks_error。 - 发生异常或错误时,应根据
status_message定位问题,并实现重试、告警或降级处理。
实用场景
- 归类:将大规模映射到 Google 产品与服务类别,构建更晰的 SEO 主题和分类体系。
- 规划集群:根据对应的类别识别主题,提升专题页、落地页和博客的组织效率。
- 优化广告分组:产品或服务类别拆分,为搜索广告建立更精准的广告组和着陆页。
- 分析市场需求:批量识别不同背后的产品服务意图,市场细分和业务线优级判断。
- 完善库:为库补类别标签,支持后续的排名监控、竞品分析和 SEO 报表统计。