主题
Google Jobs API:概览
本接口用于获取 Google Jobs 搜索结果。主接口契约如下:
- 提交任务:
POST /v3/serp/google/jobs/task_post/ - 获取高级结果:
GET /v3/serp/google/jobs/task_get/advanced/ - 获取 HTML 结果:
GET /v3/serp/google/jobs/task_get/html/
返回结果取决于提交任务时指定的、语言和位置参数。本平台会高精度模拟指定位置,使返回结果尽可能匹任务提交时对应参数下的搜索结果。
你可以在隐身模式下访问响应中的 check_url,核验返回数据是否与目标搜索环境一致。系统不会考虑用户偏好、搜索历史及个性化因素,因此这些因素不会反映在返回的 SERP 结果中。
结果排名字段
Google Jobs API 使用以下两个排名字段:
rank_group:结果在所属结果组中的排名。rank_absolute:结果在整个 SERP 页面所有中的绝对排名。
二的区别在于:rank_group 只在当前结果类型或结果组计算,而 rank_absolute 跨所有 SERP素计算。
API 功能
本接口提供两种标准结果获取功能。
Advanced
路径:
text
/v3/serp/google/jobs/task_get/advanced/返回指定、语言和位置对应的结构化搜索结果,最多支持返回 200 条结果。
HTML
路径:
text
/v3/serp/google/jobs/task_get/html/返回指定、语言和位置对应的原始 SERP HTML 页面。
请求方式
标准任务方式
标准方式需要分两步调用:
- 使用
POST请求创建任务。 - 使用
GET请求获取任务结果。
创建任务
http
POST /v3/serp/google/jobs/task_post/
Authorization: Bearer smt_live_YOUR_KEY
Content-Type: application/json请求体为 JSON 数组,每个数组代表一个任务:
json
[
{
"keyword": "软件工程师",
"language_code": "zh-CN",
"location_code": 1012701,
"depth": 10
}
]获取任务结果
创建任务后,使用任务 ID 获取结果:
http
GET /v3/serp/google/jobs/task_get/advanced/{id}
Authorization: Bearer smt_live_YOUR_KEY如需获取原始 HTML,则使用:
http
GET /v3/serp/google/jobs/task_get/html/{id}
Authorization: Bearer smt_live_YOUR_KEYPingback 与 Postback
创建任务时,可以指定以下回调地址:
pingback_url:任务完成后向指定地址发送通知。postback_url:任务完成后将结果发送至指定地址。
如果使用 postback_url,还需要指定结果获取功能,例如:
regular:返回结构化结果。html:返回原始 SERP HTML。
批量获取已完成任务
如果一次提交多个任务,可以使用以下接口获取已完成任务的 ID 列表:
text
/v3/serp/google/jobs/tasks_ready/之后,再针对每个任务 ID 调用对应的 Task GET 接口获取结果:
text
/v3/serp/google/jobs/task_get/advanced/调用限制
- 每分钟 POST 和 GET API 调用总量最多为 2,000 次。
- 每次 POST 请求最多 100 个任务。
- 如需提高调用限制,请联系平台技术支持。
常用请求示例
cURL
bash
curl --request POST \
--url https://api.seermartech.cn/v3/serp/google/jobs/task_post/ \
--header 'Authorization: Bearer smt_live_YOUR_KEY' \
--header 'Content-Type: application/json' \
--data '[
{
"keyword": "软件工程师",
"language_code": "zh-CN",
"location_code": 1012701,
"depth": 10
}
]'Python
python
import requests
url = "https://api.seermartech.cn/v3/serp/google/jobs/task_post/"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
}
payload = [
{
"keyword": "软件工程师",
"language_code": "zh-CN",
"location_code": 1012701,
"depth": 10,
}
]
response = requests.post(url, headers=headers, json=payload)
print(response.json())TypeScript
typescript
const response = await fetch(
"https://api.seermartech.cn/v3/serp/google/jobs/task_post/",
{
method: "POST",
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify([
{
keyword: "软件工程师",
language_code: "zh-CN",
location_code: 1012701,
depth: 10,
},
]),
}
);
const data = await response.json();
console.log(data);计费说明
本接口支持实时获取和标准任务获取方式:
- Live 方法:实时返回结果,通常更高的处理优级,因此请求成本相对较高。
- Standard 方法:任务优级执行,通常:
- 普通优级;
- 高优级。
当 depth 高于默认值时,任务成本会按结果数量区间增加。例如默认 depth 为 10 时,设置 "depth": 15 可能按 20 条结果的计费区间计算。
扣费以响应头 X-SeerMarTech-Charge-CNY 为准。价格会根据调用方式、任务优级、结果深度及参数变化。
路径
- Google Jobs 任务提交:
/v3/serp/google/jobs/task_post/ - 高级结构化结果:
/v3/serp/google/jobs/task_get/advanced/ - 原始 HTML 结果:
/v3/serp/google/jobs/task_get/html/ - 已完成任务列表:
/v3/serp/google/jobs/tasks_ready/ - Google 语言列表:
/v3/serp/google/languages/ - Google 位置列表:
/v3/serp/google/locations/ - 沙箱环境:
/v3/appendix/sandbox/
实用场景
- 监测招聘排名:批量跟踪“软件工程师”“产品经理”等职位在不同城市的 Google Jobs 展现,评估招聘页面的搜索可见度。
- 比较不同地区的职位结果:指定多个语言和位置参数,分析同一职位在不同城市或国家的搜索结果差异,支持招聘市场和岗位投放决策。
- 采集竞争职位信息:获取指定下的职位、和来源页面结果,分析竞争对手的招聘规模与岗位分布。
- 核验职位页面 SERP 展现:通过
check_url和结构化结果交叉检查职位页面是否正确出现在 Google Jobs 结果中,及时发现索引或结构化数据问题。 - 构建招聘 SEO 监控报表:定期提交批量任务并获取结果,统计职位排名、结果数量和地区变化趋势,为招聘网站 SEO 优化提供数据依据。