主题
Domain Analytics Technologies 过滤器
GET /v3/domain_analytics/technologies/available_filters
本页说明 Domain Analytics Technologies 接口可使用的过滤器,以及如何获取完整的可用过滤字段和操作符列表。
获取可用过滤器
请求方法与路径:GET /v3/domain_analytics/technologies/available_filters
调用本接口可获取 Domain Analytics Technologies 接口支持的过滤参数。过滤器与 result 数组中的对象,使用时应根据目标接口返回对象的字段结构进行。
计费
本接口调用,响应中的任务费用为 0。如接口产生费用,扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
请求示例
cURL
bash
curl --location --request GET \
"https://api.seermartech.cn/v3/domain_analytics/technologies/available_filters" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json"PHP
php
<?php
$api_url = 'https://api.seermartech.cn';
$ch = curl_init(
$api_url . '/v3/domain_analytics/technologies/available_filters'
);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer smt_live_YOUR_KEY',
'Content-Type: application/json',
],
]);
$response = curl_exec($ch);
if ($response === false) {
echo '请求失败:' . curl_error($ch);
} else {
$result = json_decode($response, true);
print_r($result);
}
curl_close($ch);TypeScript
typescript
import axios from 'axios';
axios({
method: 'get',
url: 'https://api.seermartech.cn/v3/domain_analytics/technologies/available_filters',
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);
});Python
python
import requests
url = "https://api.seermartech.cn/v3/domain_analytics/technologies/available_filters"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
}
response = requests.get(url, headers=headers)
if response.ok:
result = response.json()
print(result)
else:
print(f"请求失败:HTTP {response.status_code},响应:{response.text}")C#
csharp
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
public static class Demos
{
public static async Task GetAvailableFilters()
{
using var httpClient = new HttpClient
{
BaseAddress = new Uri("https://api.seermartech.cn/")
};
httpClient.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Bearer", "smt_live_YOUR_KEY");
var response = await httpClient.GetAsync(
"/v3/domain_analytics/technologies/available_filters"
);
var body = await response.Content.ReadAsStringAsync();
if (response.IsSuccessStatusCode)
{
Console.WriteLine(body);
}
else
{
Console.WriteLine(
$"请求失败:HTTP {(int)response.StatusCode},响应:{body}"
);
}
}
}响应结构
接口返回 JSON 数据 tasks 数组。tasks 中的每个任务请求路径、任务状态以及可用于数据过滤的参数列表。
顶层响应字段
| 字段 | 类型 | 说明 |
|---|---|---|
version | string | 当前 API 版本 |
status_code | integer | 通用响应状态码 |
status_message | string | 通用响应说明 |
time | string | 请求执行耗时,单位为秒 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
tasks_count | integer | tasks 数组中的任务数量 |
tasks_error | integer | tasks 数组中返回错误的任务数量 |
tasks | array | 任务列表 |
tasks 任务字段
| 字段 | 类型 | 说明 |
|---|---|---|
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 | 请求 URL 路径 |
data | object | GET 请求 URL 中传的参数 |
result | array | 可用过滤参数列表,参数通常按支持的接口进行分组 |
data 字段示例
json
{
"api": "domain_analytics",
"function": "available_filters",
"se": "technologies"
}响应示例
以下示例展示响应结构,result 中的取决于当前支持的过滤参数版本。
json
{
"version": "0.1.20221214",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0352 sec.",
"cost": 0,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "00000000-0000-0000-0000-000000000000",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.0100 sec.",
"cost": 0,
"result_count": 1,
"path": [
"v3",
"domain_analytics",
"technologies",
"available_filters"
],
"data": {
"api": "domain_analytics",
"function": "available_filters",
"se": "technologies"
},
"result": [
{
"...": "可用过滤字段及操作符列表"
}
]
}
]
}过滤器
过滤器用于限制接口返回的 result 数据。过滤器应添加到支持筛选的 Domain Analytics Technologies 请求体中。
filters 字段
| 字段 | 类型 | 说明 |
|---|---|---|
filters | array | 结果过滤条件数组 |
最多可同时设置 8 个过滤条件。当设置多个条件时,在条件之间指定逻辑运算符 and 或 or。
过滤器基本结构
单个过滤条件通常表示为:
json
["字段名", "操作符", "过滤值"]多个过滤条件示例:
json
[
["domain_rank", ">=", 50],
"and",
["country_iso_code", "=", "US"]
]也可以使用 or:
json
[
["language_code", "=", "en"],
"or",
["content_language_code", "=", "en"]
]支持过滤的字段
当前支持以下字段:
domain_ranklast_visitedcountry_iso_codelanguage_codecontent_language_code
完整的字段类型、操作符和取值要求,以 GET /v3/domain_analytics/technologies/available_filters 的响应为准。
filtered_field
| 字段 | 类型 | 说明 |
|---|---|---|
filtered_field | string | 支持过滤的字段名称 |
可使用的字段:
text
domain_rank
last_visited
country_iso_code
language_code
content_language_codefilter_operator
| 字段类型 | 支持的操作符 |
|---|---|
num 数值型 | <、<=、>、>=、=、<>、in、not_in |
str 字符串型 | like、not_like、=、<>、regex、not_regex |
time 时间型 | <、> |
数值型示例
json
["domain_rank", ">=", 50]字符串型示例
json
["country_iso_code", "=", "US"]in 和 not_in 示例
使用 in 或 not_in 时,过滤值是数组:
json
["country_iso_code", "in", ["US", "GB", "CA"]]json
["language_code", "not_in", ["ru", "zh"]]正则表达式示例
regex 和 not_regex 可合字符串值使用,正则表达式应符合 RE2 语法:
json
["domain", "regex", ".*\\.com$"]时间字段格式
时间类型的过滤值使用以下格式:
text
yyyy-mm-dd hh-mm-ss +00:00示例:
text
2021-01-29 15:02:37 +00:00时间过滤示例:
json
["last_visited", ">", "2021-01-29 15:02:37 +00:00"]filter_value
| 字段 | 类型 | 说明 |
|---|---|---|
filter_value | object | 过滤值 |
filter_value 的类型和格式与 filtered_field 的字段类型匹:
- 数值字段使用数字;
- 字符串字段使用字符串;
- 时间字段使用规定格式的时间字符串;
- 使用
in或not_in时使用数组。
错误处理
请根据响应中的 status_code 和 status_message 判断请求是否成功:
json
{
"status_code": 20000,
"status_message": "Ok."
}:
20000表示请求成功;- 状态码表示请求或任务处理异常;
- 错误原因以
status_message为准; - 实扣费以响应头
X-SeerMarTech-Charge-CNY为准。
实用场景
- 筛选高权重域名:使用
domain_rank过滤高质量域名,优分析较高 SEO 价值的网站。 - 定位近期活跃网站:使用
last_visited筛选最近被访问或更新的网站,提升技术栈监测数据的时效性。 - 按国家拆分技术市场:使用
country_iso_code过滤目标国家域名,支持海外 SEO 市场研究和竞品分析。 - 按语言识别市场:结合
language_code和content_language_code筛选特定语言网站,评估多语言和本地化 SEO 覆盖。 - 组合多个条件缩小分析范围:使用
and、or组合域名权重、国家、语言和时间条件,构建精准的技术栈样本集。