Skip to content

技术统计(Technology Stats)

POST /v3/domain_analytics/technologies/technology_stats/live

Technology Stats 接口用于查询某项技术在不同国家、语言维度下的域名使用历史变化数据。你可以基于指定技术名称,获取某一时间范围每天的域名数量分布。

历史数据最早可追溯到 2022-10-31

接口地址

POST https://api.seermartech.cn/v3/domain_analytics/technologies/technology_stats/live

计费说明

该接口按请求计费。

由于原始文档未提供固定单价,无法直接换算为人民币参考价。扣费以响应头 X-SeerMarTech-Charge-CNY 为准

请求说明

  • 请求方法:POST
  • 请求体格式:application/json
  • 编码:UTF-8
  • 请求体为 JSON 数组[{ ... }]
  • 接口频率限制:最高 2000 次请求/分钟

请求参数

字段名类型说明
technologystring目标技术名称。可用技术列表可通过 /v3/domain_analytics/technologies/technologies 查询。示例:"Salesforce"
date_fromstring时间范围起始日期。最小值:2022-10-31。未填写时默认使用最小可用日期。格式:yyyy-mm-dd。示例:"2023-06-01"
date_tostring时间范围结束日期。未填写时默认使用当天日期。格式:yyyy-mm-dd。示例:"2023-01-15"
tagstring自定义任务标识,最长 255 个字符。可用于请求与响应结果对账;响应中的 data 对象会返回该值。

响应结构

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

顶层字段

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

建议在集成时对 status_codestatus_message 建立完整的异常处理机制。

tasks[] 字段

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

result[] 字段

字段名类型说明
technologystring目标技术名称
date_fromstring查询起始日期
date_tostring查询结束日期
items_countintegeritems 数组中的数量
itemsarray统计结果列表

items[] 字段

字段名类型说明
typestring结果类型,固定为 technology_stats_item
datestring当前统计项对应的日期
domains_countinteger使用该技术的域名数量
countriesobject按国家分布的网站数量,键为国家代码,值为对应网站数量
languagesobject按语言分布的网站数量,键为语言代码,值为对应网站数量
domains_rankobject按外链权重区间分布的网站数量,键为 rank 区间,值为对应数量

domains_rank 表示不同外链权重区间中的网站分布,可用于分析该技术在不同质量站点中的采用程度。

请求示例

cURL

bash
curl --location --request POST "https://api.seermartech.cn/v3/domain_analytics/technologies/technology_stats/live" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
 {
 "technology": "jQuery",
 "date_from": "2022-10-31",
 "date_to": "2023-06-01"
 }
]'

Python

python
import requests

url = "https://api.seermartech.cn/v3/domain_analytics/technologies/technology_stats/live"
headers = {
 "Authorization": "Bearer smt_live_YOUR_KEY",
 "Content-Type": "application/json"
}
payload = [
 {
 "technology": "jQuery",
 "date_from": "2022-10-31",
 "date_to": "2023-06-01"
 }
]

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

TypeScript

typescript
import axios from "axios";

const payload = [
 {
 technology: "jQuery",
 date_from: "2022-10-31",
 date_to: "2023-06-01"
 }
];

axios({
 method: "post",
 url: "https://api.seermartech.cn/v3/domain_analytics/technologies/technology_stats/live",
 headers: {
 Authorization: "Bearer smt_live_YOUR_KEY",
 "Content-Type": "application/json"
 },
 data: payload
})
 .then((response) => {
 // 输出结果数据
 console.log(response.data);
 })
 .catch((error) => {
 console.error(error);
 });

响应示例

原始文档中的示例响应存在截断和格式缺失,以下示例根据字段定义整理为可读结构用于说明返回格式。

json
{
 "version": "0.1.20221214",
 "status_code": 20000,
 "status_message": "Ok.",
 "time": "0.1010 sec.",
 "cost": 0.018,
 "tasks_count": 1,
 "tasks_error": 0,
 "tasks": [
 {
 "id": "12345678-1234-1234-1234-1234567890ab",
 "status_code": 20000,
 "status_message": "Ok.",
 "time": "0.0812 sec.",
 "cost": 0.018,
 "result_count": 1,
 "path": [
 "v3",
 "domain_analytics",
 "technologies",
 "technology_stats",
 "live"
 ],
 "data": {
 "api": "domain_analytics",
 "function": "technology_stats",
 "se": "technologies",
 "technology": "jQuery",
 "date_from": "2022-10-31",
 "date_to": "2023-06-01"
 },
 "result": [
 {
 "technology": "jQuery",
 "date_from": "2022-10-31",
 "date_to": "2023-06-01",
 "items_count": 2,
 "items": [
 {
 "type": "technology_stats_item",
 "date": "2023-05-31",
 "domains_count": 1250000,
 "countries": {
 "US": 420000,
 "GB": 110000,
 "DE": 95000
 },
 "languages": {
 "en": 860000,
 "de": 70000,
 "fr": 50000
 },
 "domains_rank": {
 "0-10": 320000,
 "11-20": 280000,
 "21-30": 190000
 }
 },
 {
 "type": "technology_stats_item",
 "date": "2023-06-01",
 "domains_count": 1254300,
 "countries": {
 "US": 421300,
 "GB": 110250,
 "DE": 95200
 },
 "languages": {
 "en": 862400,
 "de": 70100,
 "fr": 50100
 },
 "domains_rank": {
 "0-10": 321000,
 "11-20": 281000,
 "21-30": 190500
 }
 }
 ]
 }
 ]
 }
 ]
}

状态码与错误处理

  • 顶层 status_code=20000 通常表示请求成功
  • 单个任务的 status_code 用于判断该任务是否执行成功
  • 完整错误码和状态说明请参考 /v3/appendix/errors

建议至少处理以下:

  1. 认证失败:检查 Authorization 是否为有效的 Bearer smt_live_YOUR_KEY
  2. 参数错误:重点检查 technology 是否存在、日期格式是否为 yyyy-mm-dd
  3. 时间范围越界date_from 不能早于 2022-10-31
  4. 任务级失败:即使顶层请求成功,也应逐个检查 tasks[].status_code

使用建议

  • 如需查询技术名称列表,调用 /v3/domain_analytics/technologies/technologies
  • 若未指定 date_from,系统会自动从最早可用日期 2022-10-31 开始统计
  • 若未指定 date_to,系统默认统计到当天
  • 可以结合 countrieslanguages 字段,识别某项技术在不同市场中的采用趋势
  • 可以结合 domains_rank 分析某项技术是否更常见于高权重或低权重网站

实用场景

  • 评估技术渗透趋势:跟踪某个 CMS、JS 框架或营销的历史使用量变化,判断技术是否处于增长期,为市场研究和竞品分析提供依据。
  • 定位重点国家市场:分析某项技术在不同国家的域名分布,识别技术采用最集中的地区, SEO 与区域化拓展策略。
  • 识别语言生态差异:查看技术在不同语言网站中的使用,判断某项技术在英语、西语、德语等生态中的普及程度。
  • 筛选高价值技术机会:结合 domains_rank 判断某项技术是否更多出现在高质量站点中,用于发现潜在合作对象、优研究对象或销售线索。
  • 监控技术迁移变化:按时间序列观察某项技术的域名数量波动,识别大规模迁移、淘汰或普及节点,支持行业趋势预警。

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