Felo API PlatformFelo API Platform
全部 DataForSEO 端点
v0.2.0-beta
OpenAPI 3.1.0

设置 Google 自然搜索 SERP 任务

服务器:https://openapi.felo.ai
客户端库

DataForSEO

​

SEO, search-engine results, keyword research, backlinks and AI visibility data.

设置 Google 自然搜索 SERP 任务

​

将 Google 上某个关键词的排名结果加入队列,在 tasks[0].id 中返回任务 id。采用 DataForSEO 的信封结构:数据位于 tasks[0].result,结果状态位于 tasks[0].status_code——被拒绝的请求仍会返回 HTTP 200。实时版本会立即返回,对于单次查询更简单;当批量任务会超出一次工具调用的时间时,请使用队列。

计费参考

  • 计量方式:按上报的响应成本计量。
  • 参考请求估算:0.02 美元。
  • 参考客户倍率:1.0。不得对已结算的客户金额再次应用。

仅供参考的元数据,不是账户报价、保证价格或消费上限。资源额度不同于 Felo 额度。最终扣费以 Felo 计费记录为准。

请求体
application/json
  • 类型: array (object | null)[]
    • browser_screen_height
      类型: integer | null

      浏览器屏幕高度

      可选字段

      你可以为特定设备设置自定义浏览器屏幕高度,以计算像素排名;

      可指定范围:240-9999;

      默认情况下,该参数设为:

      1080(desktop);

      640(mobile,android);

      812(mobile,iOS);

      注意:要使用此参数,请将 calculate_rectangles 设为 true

    • browser_screen_resolution_ratio
      类型: integer | null

      浏览器屏幕分辨率比例

      可选字段

      你可以为特定设备设置自定义浏览器屏幕分辨率比例,以计算像素排名;

      可指定范围:0.5-3;

      默认情况下,该参数设为:

      1(desktop);

      3(mobile,android);

      3(mobile,iOS);

      注意:要使用此参数,请将 calculate_rectangles 设为 true

    • browser_screen_width
      类型: integer | null 格式: int64

      浏览器屏幕宽度

      可选字段

      你可以为特定设备设置自定义浏览器屏幕宽度,以计算像素排名;

      可指定范围:240-9999;

      默认情况下,该参数设为:

      1920(desktop);

      360(mobile,android);

      375(mobile,iOS);

      注意:要使用此参数,请将 calculate_rectangles 设为 true

    • calculate_rectangles
      类型: boolean | null

      计算高级结果中 SERP 元素的像素排名

      可选字段

      像素排名是指结果摘要与屏幕左上角之间的距离;

      访问帮助中心了解更多>>

      默认情况下,该参数设为 false

      注意:使用此参数将额外收取 $0.0006

    • depth
      类型: integer | null

      解析深度

      可选字段

      SERP 中的结果数量

      默认值:10

      最大值:700


      账户将按每个最多包含 10 条结果的 SERP 计费;

      将深度设为 10 以上可能会产生额外费用(如果搜索引擎返回超过 10 条结果);

      费用可在 价格页计算。

    • device
      类型: string | null

      设备类型

      可选字段

      返回特定设备类型的结果

      可取值为:desktop、mobile

      默认值:desktop

    • expand_ai_overview
      类型: boolean | null

      展开 AI 概览

      可选字段

      设为 true 以展开 ai_overview 项;

      默认值:false;

      注意:此参数仅适用于 HTML 任务结果

    • find_targets_in
      类型: array string[] | null

      要检查目标的 SERP 元素类型

      可选字段

      要启用此参数,还必须启用 stop_crawl_on_match

      指定应检查哪些 SERP 元素类型以匹配目标

      如果未指定,将检查所有带有 url 和 domain 字段的一级元素是否匹配目标

      可取的值:organic、paid、local_pack、featured_snippet、events、google_flights、images、jobs、knowledge_graph、local_service、map、scholarly_articles、third_party_reviews、twitter

      注意:不能包含与 ignore_targets_in 相同的元素类型

      示例:

      "find_targets_in": ["organic", "featured_snippet"]

      详情请参阅我们帮助中心中的此参数说明

    • group_organic_results
      类型: boolean | null

      显示相关结果

      可选字段

      如果设为 true,响应中的 related_result 元素将作为其父级自然结果的摘要提供;

      如果设为 false,related_result 元素将作为单独的自然结果提供;

      默认值:true

    • ignore_targets_in
      类型: array string[] | null

      要从目标搜索中排除的 SERP 元素类型

      可选字段

      要启用此参数,还必须启用 stop_crawl_on_match

      指定在搜索目标匹配时应排除哪些 SERP 元素类型

      可取的值:organic、paid、local_pack、featured_snippet、events、google_flights、images、jobs、knowledge_graph、local_service、map、scholarly_articles、third_party_reviews、twitter

      注意:不能包含与 find_targets_in 相同的元素类型

      示例:

      "ignore_targets_in": ["paid", "images"]

      详情请参阅我们帮助中心中的此参数说明

    • keyword
      类型: string

      关键词

      必填字段

      在 keyword 字段中最多可指定 700 个字符

      所有 %## 都将被解码(另外,字符 ‘+’ 会被解码为空格字符)

      如果需要在 keyword 中使用 “%” 字符,请将其指定为 “%25”;

      如果需要在 keyword 中使用 “+” 字符,请将其指定为 “%2B”;

      如果此字段包含 ‘allinanchor:’、‘allintext:’、‘allintitle:’、‘allinurl:’、‘cache:’、‘define:’、‘filetype:’、‘id:’、‘inanchor:’、‘info:’、‘intext:’、‘intitle:’、‘inurl:’、‘link:’、‘site:’,每个任务的费用将乘以 5

      有关 DataForSEO API 中 keyword 和 keywords 字段的规则与限制,请参阅这篇帮助中心文章

    • language_code
      类型: string

      搜索引擎语言代码

      未指定 language_name 时为必填字段

      如果使用此字段,则无需指定 language_name

      可单独向 https://api.dataforseo.com/v3/serp/google/languages 发起请求,获取搜索引擎的可用语言及其 language_code 列表

      示例:

      en

    • language_name
      类型: string

      搜索引擎语言全名

      未指定 language_code 时为必填字段

      如果使用此字段,则无需指定 language_code

      可单独向 https://api.dataforseo.com/v3/serp/google/languages 发起请求,获取搜索引擎的可用语言及其 language_name 列表

      示例:

      English

    • load_async_ai_overview
      类型: boolean | null

      加载异步 AI 概览

      可选字段

      设为 true 以获取 SERP 中的 ai_overview 项,即使它们是异步加载的;

      如果设为 false,你将只能从缓存中获取 ai_overview 项;

      默认值:false

      注意:使用此参数将额外收取 $0.0006;

      如果该元素不存在或包含 "asynchronous_ai_overview": false,所有额外费用将退还到你的账户余额

    • location_code
      类型: integer

      搜索引擎地点代码

      未指定 location_name 或 location_coordinate 时为必填字段

      如果使用此字段,则无需指定 location_name 或 location_coordinate

      可单独向 https://api.dataforseo.com/v3/serp/google/locations 发起请求,获取搜索引擎的可用地点及其 location_code 列表

      示例:

      2840

    • location_coordinate
      类型: string

      地点的 GPS 坐标

      未指定 location_name 或 location_code 时为必填字段

      如果使用此字段,则无需指定 location_name 或 location_code

      location_coordinate 参数应采用 "latitude,longitude,radius" 格式

      "latitude" 和 "longitude" 的最大小数位数:7

      "radius" 的最小值:199(mm)

      "radius" 的最大值:199999(mm)

      示例:

      53.476225,-2.243572,200

    • location_name
      类型: string

      搜索引擎地点全名

      未指定 location_code 或 location_coordinate 时为必填字段

      如果使用此字段,则无需指定 location_code 或 location_coordinate

      可单独向 https://api.dataforseo.com/v3/serp/google/locations 发起请求,获取搜索引擎的可用地点及其 location_name 列表

      示例:

      London,England,United Kingdom

    • match_type
      类型: string

      目标匹配类型

      指定 stop_crawl_on_match 时为必填字段

      match_value 的匹配类型

      可取的值:

      domain – 特定域名或子域名

      with_subdomains – 主域名和子域名

      wildcard – 通配符模式

    • match_value
      类型: string

      目标域名、子域名或通配符值

      指定 stop_crawl_on_match 时为必填字段

      指定目标域名、子域名或通配符值;

      注意:域名或子域名指定时不得包含请求协议;

      示例:"match_value": "dataforseo.com",

      "match_value": "/blog/post-*"

    • max_crawl_pages
      类型: integer | null

      页面抓取上限

      可选字段

      要抓取的搜索结果页数

      最大值:100

      注意:每抓取一个页面都会收费(每页 10 条自然结果);

      详情请参阅我们的价格页;

      注意#2:max_crawl_pages 和 depth 参数相互补充;

      详情请参阅我们的帮助中心

    • os
      类型: string | null

      设备操作系统

      可选字段

      如果在 device 字段中指定 desktop,请从以下值中选择:windows、macos

      默认值:windows

      如果在 device 字段中指定 mobile,请从以下值中选择:android、ios

      默认值:android

    • people_also_ask_click_depth
      类型: integer | null

      相应元素上的点击次数

      可选字段

      指定 people_also_ask 元素上的点击深度,以获取额外的 people_also_ask_element 项;

      注意 你的账户将按每次点击额外计费 $0.00015,无论任务优先级如何;

      如果该元素不存在或我们执行的点击次数少于你指定的次数,所有额外费用将退还到你的账户余额

      可取的值:1 到 4

    • pingback_url
      类型: string | null

      任务完成通知 URL

      可选字段

      任务完成后,我们会向你指定的 URL 发送 GET 请求进行通知

      可将 ‘$id’ 字符串用作 $id 变量,将 ‘$tag’ 用作经 URL 编码的 $tag 变量。发送请求前我们会设置必要的值。

      示例:

      http://your-server.com/pingscript?id=$id

      http://your-server.com/pingscript?id=$id&tag=$tag

      注意:pingback_url 中的特殊字符会进行 URL 编码;

      例如,# 字符会被编码为 %23


      详情请参阅我们的帮助中心

    • postback_data
      类型: string

      postback_url 数据类型

      指定 postback_url 时为必填字段

      对应于将发送到你服务器的数据类型

      可取值为:

      regular、advanced、html

    • postback_url
      类型: string | null

      用于发送任务结果的 URL

      可选字段

      任务完成后,我们会将结果以 gzip 格式压缩,并向你指定的 postback_url 发送 POST 请求

      可将 ‘$id’ 字符串用作 $id 变量,将 ‘$tag’ 用作经 URL 编码的 $tag 变量。发送请求前我们会设置必要的值

      示例:

      http://your-server.com/postbackscript?id=$id

      http://your-server.com/postbackscript?id=$id&tag=$tag

      注意:postback_url 中的特殊字符会进行 URL 编码;

      例如,# 字符会被编码为 %23


      详情请参阅我们的 帮助中心

    • priority
      类型: integer | null

      任务优先级

      可选字段

      可取以下值:

      1 – 正常执行优先级(默认设置);

      2 – 高执行优先级


      高执行优先级的任务将额外收费。

      费用可在 价格页计算。

    • remove_from_url
      类型: array string[] | null

      从 URL 中移除特定参数

      可选字段

      使用此字段,最多可指定 10 个要从结果 URL 中移除的参数

      示例:

      "remove_from_url": ["srsltid"]

    • se_domain
      类型: string | null

      搜索引擎域名

      可选字段

      我们会根据你指定的地点和语言自动选择相关的搜索引擎域名

      不过,你也可以在此字段中设置自定义搜索引擎域名

      示例:

      google.co.uk, google.com.au, google.de 等。

    • search_param
      类型: string | null

      搜索查询的附加参数

      可选字段

      在此获取可用参数列表及更多详细信息


      注意:以下搜索引擎参数不受支持,如果指定将被自动取消:lr、cr、as_qdr、as_sitesearch、as_occt、as_filetype。
    • stop_crawl_on_match
      类型: array (object | null)[] | null

      用于停止爬取的目标数组 可选字段 如果指定,响应将包含截至并包括指定 match_value 的 SERP 结果; 此数组中最多可指定 10 个目标值 示例: "stop_crawl_on_match":[{"match_value":"dataforseo.com","match_type":"with_subdomains"}] 可在我们的帮助中心了解此参数 - https://dataforseo.com/help-center/using-the-stop_crawl_on_match-parameter-in-serp-api 你的账户将按通过指定目标爬取的每个 SERP 计费

      • match_type
        类型: string | null

        目标匹配类型 指定 stop_crawl_on_match 时为必填字段; match_value 的匹配类型 可能的值:domain、with_subdomains、wildcard

      • match_value
        类型: string | null

        目标域名或通配符值 指定 stop_crawl_on_match 时为必填字段; 指定目标域名或通配符值; 注意:域名必须不带请求协议; 示例:dataforseo.com

    • tag
      类型: string | null

      用户自定义任务标识符

      可选字段

      字符数上限为 255

      可使用此参数标识任务,并将其与结果对应

      指定的 tag 值可在响应的 data 对象中找到

    • target_search_mode
      类型: string | null

      目标匹配模式

      可选字段

      要启用此参数,还必须启用 stop_crawl_on_match

      定义在 stop_crawl_on_match 中指定多个目标时爬取应如何停止

      可能的值:all、any

      all – 仅当找到所有指定目标时爬取才停止

      any – 找到任意单个目标时爬取即停止

      默认值:any

      详情请参阅我们 帮助中心中的此参数说明

    • url
      类型: string | null

      搜索查询的直接 URL

      可选字段

      你可以指定一个直接 URL,我们会将其解析到必要字段。注意,此方法对我们的 API 来说处理难度最大,并且要求你在 URL 中指定确切的语言和地点。大多数情况下,我们不建议使用此方法。

      示例:

      https://www.google.co.uk/search?q=%20rank%20tracker%20api&hl=en&gl=GB&uule=w+CAIQIFISCXXeIa8LoNhHEZkq1d1aOpZS


      注意:以下搜索引擎参数不受支持,如果在 URL 中指定将被自动取消:lr、cr、as_qdr、as_sitesearch、as_occt、as_filetype。
响应
  • 200
    类型: object | null · Response36Afe1097B20_SerpGoogleOrganicTaskPostResponseInfo
    • cost
      类型: number | null 格式: double

      任务总费用,美元

    • status_code
      类型: integer | null

      通用状态码 完整响应码列表见此处

    • status_message
      类型: string | null

      通用信息性消息 完整的一般信息性消息列表见此处

    • tasks
      类型: array (object | null)[] | null

      任务数组

      • 类型: object | null · Response36Afe1097B20_SerpGoogleOrganicTaskPostTaskInfo
        • cost
          类型: number | null 格式: double

          任务总费用,美元

        • data
          类型: object | null

          包含你在 POST 请求中指定的相同参数

          • propertyName
            类型: object | null
        • id
          类型: string | null

          任务标识符 我们系统中 UUID 格式的唯一任务标识符

        • path
          类型: array (string | null)[] | null

          URL 路径

        • result
          类型: object | null

          结果数组
          在本例中,该值将为 null

        • result_count
          类型: integer | null 格式: int64

          result 数组中的元素数

        • status_code
          类型: integer | null

          任务的状态码 由 DataForSEO 生成,范围如下:10000-60000 完整响应码列表见此处

        • status_message
          类型: string | null

          任务的信息性消息 完整的一般信息性消息列表见此处

        • time
          类型: string | null

          执行时间,秒

    • tasks_count
      类型: integer | null 格式: int64

      tasks 数组中的任务数

    • tasks_error
      类型: integer | null 格式: int64

      tasks 数组中返回错误的任务数

    • time
      类型: string | null

      总执行时间,秒

    • version
      类型: string | null

      API 的当前版本

    application/json
  • 400

    无法处理该请求。请检查请求参数。

  • 401

    需要有效的 Felo API 密钥。

  • 402

    由于未满足计费要求,请求无法继续。

  • 403

    该账户无权执行此操作。

  • 429

    已达到请求或支出限额。

  • 502

    服务无法完成该请求。

  • 503

    API 或计费服务暂时不可用。

  • 504

    服务在处理请求时超时。

  • default

    错误响应;上游透传响应可能采用提供方格式

    application/json
Request Example for post/v1/beta/dataforseo/serp/google/organic/task_post
curl https://openapi.felo.ai/v1/beta/dataforseo/serp/google/organic/task_post \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --data '[
  {
    "language_code": "en",
    "location_code": 2840,
    "keyword": "albert einstein"
  },
  {
    "language_name": "English",
    "location_name": "United States",
    "keyword": "albert einstein",
    "priority": 2,
    "tag": "some_string_123",
    "pingback_url": "https://your-server.com/pingscript?id=$id&tag=$tag"
  },
  {
    "url": "https://www.google.co.uk/search?q=albert%20einstein&hl=en&gl=GB&uule=w+CAIQIFISCXXeIa8LoNhHEZkq1d1aOpZS",
    "postback_data": "html",
    "postback_url": "https://your-server.com/postbackscript"
  }
]'
{
  "version": null,
  "status_code": null,
  "status_message": null,
  "time": null,
  "cost": null,
  "tasks_count": null,
  "tasks_error": null,
  "tasks": [
    {
      "id": null,
      "status_code": null,
      "status_message": null,
      "time": null,
      "cost": null,
      "result_count": null,
      "path": [
        null
      ],
      "data": null,
      "result": null
    }
  ]
}
Setting Google Organic SERP Tasks

需要帮助?