Skip to content

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 页面。

请求方式

标准任务方式

标准方式需要分两步调用:

  1. 使用 POST 请求创建任务。
  2. 使用 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_KEY

Pingback 与 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 方法:任务优级执行,通常:
    1. 普通优级;
    2. 高优级。

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 优化提供数据依据。

统一入口:官网 · LLM API · 控制台