主题
反向链接域名交集(实时)
POST /v3/backlinks/domain_intersection/live
本接口使用 POST 方法,路径为:
/v3/backlinks/domain_intersection/live
用于获取指向指定域名、子域名或网页的引用域名列表。通过设置排除目标,可以识别“链接到竞争对手、但未链接到自身网站”的域名,适合构建链接差距(Link Gap)分析功能。
接口信息
- 请求方式:
POST - 请求地址:
https://api.seermartech.cn/v3/backlinks/domain_intersection/live - 请求格式:JSON,UTF-8 编码
- 单次请求任务数:1 平台限流以认证说明中的 30/60/120 次/分钟规则为准- 最大并发请求数:30
- 单个任务最多目标数:20
- 单个任务最多排除目标数:10
计费说明
每次请求按任务计费。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
响应中的 cost 字段(平台原始 USD 成本兼容字段)表示本次任务的费用,币种及扣费金额以平台响应头为准。
请求参数
请求体是 JSON 数组,每个数组代表一个任务。
| 参数 | 类型 | 填 | 说明 |
|---|---|---|---|
targets | object | 是 | 要查询反向链接的域名、子域名或网页,最多 20 个。域名或子域名不得 https:// 和 www.;网页使用协议的完整 URL。对象键值通常使用 "1" 至 "20"。 |
exclude_targets | array | 否 | 要排除的域名、子域名或网页,最多 10 个。设置后,结果链接到 targets、但未链接到这些排除目标的引用域名。 |
filters | array | 否 | 对结果进行过滤。最多同时设置 8 个过滤条件,并使用 and 或 or 指定逻辑。 |
order_by | array | 否 | 结果排序规则。最多设置 3 条,可使用 filters 支持的字段和表达式。排序方向为 asc 或 desc。 |
offset | integer | 否 | 结果偏移量,默认值为 0。例如设置为 10 时,跳过前 10 条结果。 |
limit | integer | 否 | 返回结果的最大数量,默认值为 100,最大值为 1000。 |
internal_list_limit | integer | 否 | 限制统计对象中的最大数量。默认值为 10,最大值为 1000。适用于 referring_links_tld、referring_links_types、referring_links_attributes、referring_links_platform_types 和 referring_links_semantic_locations。 |
backlinks_status_type | string | 否 | 指定返回并计聚合指标的反向链接类型。可选值:all、live、lost。默认值为 live。 |
backlinks_filters | array | 否 | 过滤用于聚合统计的初始反向链接数据。可使用反向链接实时查询接口响应中的字段进行过滤,例如保留 dofollow 链接。 |
include_subdomains | boolean | 否 | 是否目标的子域名。false 表示忽略子域名,默认值为 true。 |
include_indirect_links | boolean | 否 | 是否间接指向目标的链接。true 表示指向重定向到目标页面或指向规范页面的链接,默认值为 true。 |
exclude_internal_backlinks | boolean | 否 | 是否排除来自目标子域名的反向链接。默认值为 true。 |
intersection_mode | string | 否 | 指定多个目标之间的交集计算方式。可选值:all、partial。all 表示基于反向链接计算;partial 表示基于交集反向链接计算。默认值为 all。 |
rank_scale | string | 否 | 指定 rank、domain_from_rank 和 page_from_rank 的计算及展示范围。可选值:one_hundred(0–100)和 one_thousand(0–1000),默认值为 one_thousand。 |
tag | string | 否 | 用户自定义任务标识,最多 255 个字符。该值会原样返回在响应的 data 对象中,可用于请求与结果。 |
过滤条件
filters 和 backlinks_filters 支持以下运算符:
regexnot_regex=<>innot_inlikenot_likeilikenot_ilikematchnot_match
使用 like 或 not_like 时,可使用 % 匹任意长度的字符串。
示例:
json
"filters": [
["1.backlinks", ">", 10],
"and",
["1.target", "like", "%example%"]
]排序规则
排序项格式为:
text
字段名,排序方向示例:
json
"order_by": [
"1.backlinks,desc",
"1.rank,desc"
]最多支持 3 条排序规则。
请求示例
cURL
bash
curl --location --request POST \
"https://api.seermartech.cn/v3/backlinks/domain_intersection/live" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"targets": {
"1": "moz.com",
"2": "ahrefs.com"
},
"exclude_targets": [
"semrush.com"
],
"limit": 5,
"order_by": [
"1.backlinks,desc"
],
"include_subdomains": false,
"exclude_internal_backlinks": true
}
]'Python
python
import requests
url = "https://api.seermartech.cn/v3/backlinks/domain_intersection/live"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
}
payload = [
{
"targets": {
"1": "moz.com",
"2": "ahrefs.com",
},
"exclude_targets": ["semrush.com"],
"limit": 5,
"include_subdomains": False,
"exclude_internal_backlinks": True,
"order_by": ["1.backlinks,desc"],
}
]
response = requests.post(url, headers=headers, json=payload)
result = response.json()
if result.get("status_code") == 20000:
print(result)
else:
print(
"请求失败,错误码:%s,消息:%s"
% (result.get("status_code"), result.get("status_message"))
)TypeScript
typescript
import axios from "axios";
const payload = [
{
targets: {
"1": "moz.com",
"2": "ahrefs.com",
},
exclude_targets: ["semrush.com"],
limit: 5,
include_subdomains: false,
exclude_internal_backlinks: true,
order_by: ["1.backlinks,desc"],
},
];
axios
.post(
"https://api.seermartech.cn/v3/backlinks/domain_intersection/live",
payload,
{
headers: {
Authorization: "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
},
}
)
.then((response) => {
// 处理接口返回结果
console.log(response.data);
})
.catch((error) => {
console.error("请求失败:", error.response?.data || error.message);
});响应结构
接口返回 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 | 任务结果数组。 |
任务对象
| 字段 | 类型 | 说明 |
|---|---|---|
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 | 当前任务的结果数组。 |
result 对象
| 字段 | 类型 | 说明 |
|---|---|---|
targets | object | 请求中的目标域名、子域名或网页。 |
total_count | integer | 符合请求条件的结果总数。 |
items_count | integer | items 数组中返回的结果数量。 |
items | array | 链接到请求中目标的域名列表。 |
domain_intersection | object | 各目标对应的域名交集数据。对象键名根据 targets 中的目标数量从 "1" 到 "20" 变化。 |
summary | object | 域名交集汇总信息。 |
domain_intersection 中的目标对象
| 字段 | 类型 | 说明 |
|---|---|---|
type | string | 数据类型,固定为 backlinks_domain_intersection。 |
target | string | 指向对应目标的引用域名。 |
rank | integer | 引用域名针对目标的排名指标。该指标基于链接数据库中的节点排名方法计算。 |
backlinks | integer | 反向链接数量。 |
first_seen | string | 爬虫首次发现该反向链接的时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。 |
lost_date | string | 最近一次丢失反向链接的时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。 |
backlinks_spam_score | integer | 指向目标的反向链接平均垃圾分数。 |
broken_backlinks | integer | 失效反向链接数量。 |
broken_pages | integer | 失效页面数量。 |
referring_domains | integer | 引用域名数量。 |
referring_domains_nofollow | integer | 至少一个 nofollow 链接指向目标的域名数量。 |
referring_main_domains | integer | 引用主域名数量。 |
referring_main_domains_nofollow | integer | 至少一个 nofollow 链接指向目标的主域名数量。 |
referring_ips | integer | 引用 IP 地址数量。 |
referring_subnets | integer | 引用子网数量。 |
referring_pages | integer | 指向目标的引用页面数量。 |
referring_links_tld | object | 引用链接的顶级域名及各自链接数量。 |
referring_links_types | object | 引用链接类型及各自链接数量。 |
referring_links_attributes | object | 引用链接属性及各自链接数量。 |
referring_links_platform_types | object | 引用平台类型及各自链接数量。 |
referring_links_semantic_locations | object | 引用链接在 HTML 语义中的位置及各自链接数量。 |
referring_links_countries | object | 引用链接所在域名的 ISO 国家代码及各自链接数量。 |
referring_pages_nofollow | integer | 至少一个 nofollow 链接指向目标的引用页面数量。 |
referring_links_types 可选值
anchor:锚文本链接image:图片链接link:普通链接meta:Meta 链接canonical:规范链接alternate:备用链接redirect:重定向链接
referring_links_platform_types 可选值
cmsblogsecommercemessage-boardswikisnewsorganization
summary 对象
| 字段 | 类型 | 说明 |
|---|---|---|
intersections_count | integer | 交集结果总数。 |
响应示例
json
{
"version": "0.1.20230825",
"status_code": 20000,
"status_message": "Ok.",
"time": "6.1727 sec.",
"cost": 0.02015,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "01234567-89ab-cdef-0123-456789abcdef",
"status_code": 20000,
"status_message": "Ok.",
"time": "6.1727 sec.",
"cost": 0.02015,
"result_count": 1,
"path": [
"v3",
"backlinks",
"domain_intersection",
"live"
],
"data": {
"api": "backlinks",
"function": "domain_intersection",
"targets": {
"1": "moz.com",
"2": "ahrefs.com"
},
"include_subdomains": false,
"exclude_targets": [
"semrush.com"
],
"limit": 5,
"order_by": [
"1.backlinks,desc"
],
"exclude_internal_backlinks": true
},
"result": [
{
"targets": {
"1": "moz.com",
"2": "ahrefs.com"
},
"total_count": 1,
"items_count": 1,
"items": [
"example.com"
],
"domain_intersection": {
"1": {
"type": "backlinks_domain_intersection",
"target": "example.com",
"rank": 512,
"backlinks": 24,
"first_seen": "2019-11-15 12:57:46 +00:00",
"lost_date": null,
"backlinks_spam_score": 3,
"broken_backlinks": 0,
"broken_pages": 0,
"referring_domains": 12,
"referring_domains_nofollow": 2,
"referring_main_domains": 10,
"referring_main_domains_nofollow": 1,
"referring_ips": 9,
"referring_subnets": 8,
"referring_pages": 18,
"referring_links_tld": {
"com": 20,
"org": 4
},
"referring_links_types": {
"anchor": 18,
"image": 6
},
"referring_links_attributes":
## 实用场景
- 待补充具体业务场景