Skip to content

Bing 页面(Live)

接口说明

该接口用于获取指定域名在 Bing 搜索中的页面数据:

  • 各页面的排名分布
  • 来自自然搜索与付费搜索的预估月流量
  • 页面排名变化(新增、上升、下降、丢失)

数据按周更新,最近一次更新时间可通过 /v3/dataforseo_labs/status/ 查询。

接口地址

POST https://api.seermartech.cn/v3/dataforseo_labs/bing/relevant_pages/live

计费说明

该接口按请求计费。

参考价约 ¥0.1680 / 次。 扣费以响应头 X-SeerMarTech-Charge-CNY 为准。

请求说明

  • 请求方法:POST
  • 请求体格式:JSON
  • 编码:UTF-8
  • 请求体为 JSON 数组:[{ ... }]
  • 支持的调用频率:最多 2000 次/分钟
  • 最大并发请求数:30

该接口支持:

  • 限制返回结果数量
  • 结果过滤
  • 结果排序

请求参数

字段类型说明
targetstring。目标网站域名。请勿 https://www.
location_namestring可选。地区名。使用该字段时无需传 location_code。可通过 /v3/dataforseo_labs/locations_and_languages 获取支持的地区列表。留空表示返回所有可用地区的数据。注意:当前该接口支持美国地区。示例:United States
location_codeinteger可选。地区编码。使用该字段时无需传 location_name。可通过 /v3/dataforseo_labs/locations_and_languages 获取。留空表示返回所有可用地区的数据。注意:当前该接口支持美国地区。示例:2840
language_namestring可选。语言名。使用该字段时无需传 language_code。可通过 /v3/dataforseo_labs/locations_and_languages 获取支持的语言列表。留空表示返回所有可用语言的数据。示例:English
language_codestring可选。语言编码。使用该字段时无需传 language_name。可通过 /v3/dataforseo_labs/locations_and_languages 获取。留空表示返回所有可用语言的数据。示例:en
item_typesarray可选。指定返回的搜索结果类型。**注意:**如果数组中非 organic 的类型,结果将按数组中的第一个类型排序;未在 item_types 中的结果类型将无法用于排序和过滤。
limitinteger可选。返回页面的最大数量。默认值:100;最大值:1000
offsetinteger可选。结果偏移量。默认值:0。例如设为 10 时,将跳过前 10 个页面,从第 11 个开始返回
historical_serp_modestring可选。数据筛选模式:live 表示返回目标域名当前仍有排名的 SERP;lost 表示返回曾有排名但最近一次检查未出现的 SERP;all 表示同时返回两类。默认值:live
ignore_synonymsboolean可选。是否忽略高度相似。设为 true 时返回核心,排除高度相似。默认值:false
filtersarray可选。结果过滤条件数组,最多支持 8 个过滤条件。条件之间需使用逻辑运算符 and / or 连接。支持的运算符:regexnot_regex<<=>>==<>innot_inmatchnot_match
order_byarray可选。结果排序规则。可使用与 filters 相同的字段路径。排序方式支持:asc(升序)、desc(降序)。单次请求最多设置 3 条排序规则。**注意:**如果 item_types 中非 organic 类型,结果将按数组中的第一个类型排序
tagstring可选。用户自定义任务标识,最长 255 个字符。响应中的 data 对象会原样返回该值,便于任务追踪

item_types 可用值

该参数用于指定要返回的搜索结果类型。结合响应结构可知,常见可用类型:

  • organic
  • paid
  • featured_snippet
  • local_pack

filters 示例

筛选出自然搜索排名中处于第 1 位或第 2-3 位的页面:

json
[
 ["metrics.organic.pos_1", "<>", 0],
 "or",
 ["metrics.organic.pos_2_3", "<>", 0]
]

order_by 示例

按自然搜索预估流量从高到低排序:

json
[
 ["metrics.organic.etv", "desc"]
]

按自然搜索第 1 位数量降序、再按第 2-3 位数量降序:

json
[
 ["metrics.organic.pos_1", "desc"],
 ["metrics.organic.pos_2_3", "desc"]
]

请求示例

cURL

bash
curl --location --request POST "https://api.seermartech.cn/v3/dataforseo_labs/bing/relevant_pages/live" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
 {
 "target": "example.com",
 "language_name": "English",
 "location_code": 2840,
 "filters": [
 ["metrics.organic.pos_1", "<>", 0],
 "or",
 ["metrics.organic.pos_2_3", "<>", 0]
 ],
 "limit": 5
 }
]'

Python

python
import requests

url = "https://api.seermartech.cn/v3/dataforseo_labs/bing/relevant_pages/live"
headers = {
 "Authorization": "Bearer smt_live_YOUR_KEY",
 "Content-Type": "application/json"
}

data = [
 {
 "target": "example.com",
 "location_name": "United States",
 "language_name": "English",
 "filters": [
 ["metrics.organic.pos_1", "<>", 0],
 "or",
 ["metrics.organic.pos_2_3", "<>", 0]
 ],
 "limit": 5
 }
]

response = requests.post(url, json=data, headers=headers)
print(response.json)

TypeScript

typescript
import axios from "axios";

const postData = [
 {
 target: "example.com",
 location_name: "United States",
 language_name: "English",
 filters: [
 ["metrics.organic.pos_1", "<>", 0],
 "or",
 ["metrics.organic.pos_2_3", "<>", 0]
 ],
 limit: 5
 }
];

axios({
 method: "post",
 url: "https://api.seermartech.cn/v3/dataforseo_labs/bing/relevant_pages/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);
});

响应结构

接口返回 JSON 对象,顶层 tasks 数组。

顶层字段

字段类型说明
versionstring当前 API 版本
status_codeinteger通用状态码。完整列表见 /v3/appendix/errors
status_messagestring通用状态信息
timestring执行耗时,单位秒
costfloat本次所有任务总费用,单位 USD
tasks_countintegertasks 数组中的任务数量
tasks_errorinteger返回错误的任务数量
tasksarray任务结果数组

tasks[] 字段

字段类型说明
idstring任务唯一标识,UUID 格式
status_codeinteger任务状态码,范围通常为 10000-60000
status_messagestring任务状态信息
timestring任务执行耗时
costfloat当前任务费用,单位 USD
result_countintegerresult 数组中的数量
patharrayURL 路径
dataobject原样返回请求中提交的参数
resultarray结果数组

result[] 字段

字段类型说明
se_typestring搜索引擎类型
targetstring请求中的目标域名
location_codeinteger请求中的地区编码;无数据时为 null
language_codestring请求中的语言编码;无数据时为 null
total_countinteger数据库中与当前请求的结果总数
items_countinteger当前 items 数组返回的结果数
itemsarray页面及指标数据

items[] 字段

字段类型说明
se_typestring搜索引擎类型
page_addressstring页面的绝对 URL
metricsobject页面排名与流量指标

metrics 指标说明

metrics 下会按搜索结果类型返回对应对象,如:

  • organic
  • paid
  • featured_snippet
  • local_pack

每个对象都相同结构的指标字段。

通用排名分布字段

字段类型说明
pos_1integer排名第 1 位的结果数量
pos_2_3integer排名第 2-3 位的结果数量
pos_4_10integer排名第 4-10 位的结果数量
pos_11_20integer排名第 11-20 位的结果数量
pos_21_30integer排名第 21-30 位的结果数量
pos_31_40integer排名第 31-40 位的结果数量
pos_41_50integer排名第 41-50 位的结果数量
pos_51_60integer排名第 51-60 位的结果数量
pos_61_70integer排名第 61-70 位的结果数量
pos_71_80integer排名第 71-80 位的结果数量
pos_81_90integer排名第 81-90 位的结果数量
pos_91_100integer排名第 91-100 位的结果数量
etvfloat预估流量
countinteger含该页面的结果总数
estimated_paid_traffic_costfloat将当前流量通过付费投放获取的预估成本,单位 USD
is_newinteger新增排名数量
is_upinteger排名上升的数量
is_downinteger排名下降的数量
is_lostinteger丢失排名的数量

各类型含义

metrics.organic

自然搜索下的排名和流量数据:

  • etv:页面预估自然月流量
  • 计算方式:页面所排名的搜索量与 CTR 的乘积汇总
  • estimated_paid_traffic_cost:如果用 PPC 广告去获取这部分自然流量,对应的预估月成本

metrics.paid

付费搜索下的排名和流量数据:

  • etv:页面预估付费月流量
  • estimated_paid_traffic_cost:基于 cpcetv 计算出的付费月流量成本

Bing SERP 中精选摘要结果的排名与流量数据。

metrics.local_pack

SERP 本地结果中的排名与流量数据。


响应示例

json
{
 "version": "0.1.20220216",
 "status_code": 20000,
 "status_message": "Ok.",
 "time": "0.1601 sec.",
 "cost": 0.0105,
 "tasks_count": 1,
 "tasks_error": 0,
 "tasks": [
 {
 "id": "12345678-1234-1234-1234-1234567890ab",
 "status_code": 20000,
 "status_message": "Ok.",
 "time": "0.1200 sec.",
 "cost": 0.0105,
 "result_count": 1,
 "path": [
 "v3",
 "dataforseo_labs",
 "bing",
 "relevant_pages",
 "live"
 ],
 "data": {
 "api": "dataforseo_labs",
 "function": "relevant_pages",
 "se_type": "bing",
 "target": "example.com",
 "language_name": "English",
 "location_code": 2840,
 "filters": [
 ["metrics.organic.pos_1", "<>", 0],
 "or",
 ["metrics.organic.pos_2_3", "<>", 0]
 ],
 "limit": 5
 },
 "result": [
 {
 "se_type": "bing",
 "target": "example.com",
 "location_code": 2840,
 "language_code": "en",
 "total_count": 125,
 "items_count": 2,
 "items": [
 {
 "se_type": "bing",
 "page_address": "https://example.com/page-1",
 "metrics": {
 "organic": {
 "pos_1": 12,
 "pos_2_3": 18,
 "pos_4_10": 35,
 "pos_11_20": 21,
 "pos_21_30": 9,
 "pos_31_40": 4,
 "pos_41_50": 2,
 "pos_51_60": 1,
 "pos_61_70": 0,
 "pos_71_80": 0,
 "pos_81_90": 0,
 "pos_91_100": 0,
 "etv": 1450.7,
 "count": 102,
 "estimated_paid_traffic_cost": 823.4,
 "is_new": 8,
 "is_up": 26,
 "is_down": 11,
 "is_lost": 3
 }
 }
 },
 {
 "se_type": "bing",
 "page_address": "https://example.com/page-2",
 "metrics": {
 "organic": {
 "pos_1": 3,
 "pos_2_3": 7,
 "pos_4_10": 19,
 "pos_11_20": 14,
 "pos_21_30": 10,
 "pos_31_40": 6,
 "pos_41_50": 1,
 "pos_51_60": 0,
 "pos_61_70": 0,
 "pos_71_80": 0,
 "pos_81_90": 0,
 "pos_91_100": 0,
 "etv": 530.2,
 "count": 60,
 "estimated_paid_traffic_cost": 274.6,
 "is_new": 2,
 "is_up": 9,
 "is_down": 6,
 "is_lost": 1
 }
 }
 }
 ]
 }
 ]
 }
 ]
}

错误处理

请根据响应中的 status_codestatus_message 处理错误或异常。 完整错误码列表参考:/v3/appendix/errors

建议重点处理以下场景:

  • 认证失败
  • 请求参数缺失或格式错误 -出频率限制
  • 查询条件无可用数据
  • 异步任务执行异常

使用建议

  1. target 填写域名,不要带协议头或 www
  2. 若只美国市场,建议显式传 location_code: 2840
  3. 若只分析自然流量,可通过 item_typesfilters 聚焦 organic
  4. 如需定位已失去排名的页面,可使用 historical_serp_mode: "lost"
  5. 当需要去重相似查询词时,可设置 ignore_synonyms: true

实用场景

  • 识别高流量落地页:找出自然搜索 etv 最高的页面,优更新与转化优化资源。
  • 排查流量下滑页面:结合 is_downis_lost 快速定位排名衰退页面,及时修复、链或技术问题。
  • 对比自然与付费获客价值:通过 organic.etvestimated_paid_traffic_cost 评估 SEO 流量替代广告投放的成本价值。
  • 挖掘精选摘要与本地机会:分析 featured_snippetlocal_pack 类型页面,寻找可扩展的 SERP 特殊展示机会。
  • 构建页面级 SEO 看板:按页面维度汇总排名分布与流量趋势,用于团队、增长团队和管理层周报监控。

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