Skip to content

基于首页 HTML 术语查找域名(实时)

POST /v3/domain_analytics/technologies/domains_by_html_terms/live

接口说明

该接口用于根据网站首页 HTML 中出现的术语查找域名。除域名列表外,响应还会返回这些网站的技术栈画像,以及对应的国家、语言等补信息。

  • 请求方式:POST
  • 接口路径:/v3/domain_analytics/technologies/domains_by_html_terms/live
  • 完整地址:https://api.seermartech.cn/v3/domain_analytics/technologies/domains_by_html_terms/live

计费说明

每次请求都会产生费用。

扣费以响应头 X-SeerMarTech-Charge-CNY 为准。

请求限制

  • 所有 POST 数据使用 UTF-8 编码的 JSON 格式
  • 请求体为 JSON 数组:[{ ... }]
  • 每分钟最多可发送 2000 次 API 请求
  • 支持结果数量控制、过滤和排序

请求参数

顶层请求体示例

json
[
 {
 "search_terms": ["data-attrid"],
 "order_by": ["last_visited,desc"],
 "limit": 10,
 "offset": 0
 }
]

参数说明

字段名类型说明
search_termsarray目标搜索术语,。可指定 HTML素、标签、属性、,或组合。如果填写多个术语,返回结果首页 HTML 中同时所有这些术语的域名。最多支持 10 个术语。
keywordsarray可选。按域名的 title、description 或 meta keywords 中的进一步筛选。使用 UTF-8 编码。最多支持 10 个。
modestring可选。搜索模式。可选值:strict_entry:严格匹术语的顺序、间隔和分隔符;entry:忽略顺序、间隔和分隔符进行匹。默认值:entry
filtersarray可选。结果过滤条件数组,最多可同时设置 8 个过滤条件。条件之间需要设置逻辑运算符 andor。支持运算符:<<=>>==<>innot_inlikenot_likelikenot_like 可合 % 通任意长度字符串。更多过滤规则可参考 /v3/domain_analytics/technologies/filters
order_byarray可选。结果排序规则。可排序字段:domain_rankdomainlast_visitedcountry_iso_codelanguage_codecontent_language_code。排序方式:asc 升序,desc 降序。格式示例:["last_visited,desc"]。单次请求最多设置 3 条排序规则。
limitinteger可选。返回的最大域名数量。默认值:100;最大值:10000
offsetinteger可选。结果偏移量。默认值:0。如设置为 10,则跳过前 10 条结果,返回后续数据。最大值:9999,且 limit + offset 不得 10000。如需翻页更多结果,请使用 offset_token
offset_tokenstring可选。后续请求分页令牌。该值会在每次响应中返回。若需要获取大结果集,建议使用该参数时。注意:当请求中使用 offset_token 时,除该参数外,参数与上一次请求一致。

过滤与排序

过滤说明

filters 支持多条件组合,例如:

json
[
 ["country_iso_code", "=", "US"],
 "and",
 ["language_code", "=", "en"]
]

也可以使用 like 模糊匹:

json
[
 ["domain", "like", "%.shop"]
]

更多过滤字段和可用规则请参考接口路径:

  • /v3/domain_analytics/technologies/filters

排序说明

order_by 为字符串数组,每项格式为:

json
["字段名,排序方式"]

示例:

json
["last_visited,desc", "domain_rank,asc"]

默认排序规则以平台 API 实行为为准。

响应结构

接口返回 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。完整列表见 /v3/appendix/errors
status_messagestring任务状态说明。
timestring任务执行耗时,单位秒。
costfloat当前任务费用,单位 USD。
result_countintegerresult 数组中的数量。
patharrayURL 路径。
dataobject与请求中提交的参数一致。
resultarray获取结果数组。

result[] 字段

字段名类型说明
total_countinteger数据库中匹条件的总数量。
items_countinteger当前结果集中 items 的数量。
offsetinteger当前请求使用的偏移值。
offset_tokenstring后续分页令牌。用于继续获取当前查询的后续结果。
itemsarray域名明细列表。

items[] 字段

字段名类型说明
typestring结果类型,固定为 domain_technology_item
domainstring域名。
titlestring域名对应页面的 meta title。
descriptionstring域名对应页面的 meta description。
meta_keywordsarray域名页面的 meta keywords。
domain_rankstring目标域名的外链排名值。
last_visitedstring爬虫最近访问该域名的时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。例如:2022-10-10 12:57:46 +00:00
country_iso_codestring目标域名所属国家的 ISO 代码。
language_codestring目标域名语言代码。
content_language_codestring目标站点语言代码。
phone_numbersarray目标网站中识别出的联系电话。
emailsarray目标网站中识别出的邮箱地址。
social_graph_urlsarray从目标站点 social graph 中检测出的社交媒体链接或账号。
technologiesobject目标域名使用的技术栈。按技术分类返回多个对象。完整技术分类及结构可参考 /v3/domain_analytics/technologies/technologies/

请求示例

cURL

bash
curl --location --request POST "https://api.seermartech.cn/v3/domain_analytics/technologies/domains_by_html_terms/live" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
 {
 "search_terms": ["data-attrid"],
 "order_by": ["last_visited,desc"],
 "limit": 10,
 "offset": 0
 }
]'

Python

python
import requests

url = "https://api.seermartech.cn/v3/domain_analytics/technologies/domains_by_html_terms/live"

payload = [
 {
 "search_terms": ["data-attrid"],
 "order_by": ["last_visited,desc"],
 "limit": 10,
 "offset": 0
 }
]

headers = {
 "Authorization": "Bearer smt_live_YOUR_KEY",
 "Content-Type": "application/json"
}

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

TypeScript

typescript
import axios from "axios";

const payload = [
 {
 search_terms: ["data-attrid"],
 order_by: ["last_visited,desc"],
 limit: 10,
 offset: 0
 }
];

axios({
 method: "post",
 url: "https://api.seermartech.cn/v3/domain_analytics/technologies/domains_by_html_terms/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": "2.7783 sec.",
 "cost": 0.01,
 "tasks_count": 1,
 "tasks_error": 0,
 "tasks": [
 {
 "id": "示例任务ID",
 "status_code": 20000,
 "status_message": "Ok.",
 "time": "2.7421 sec.",
 "cost": 0.01,
 "result_count": 1,
 "path": [
 "v3",
 "domain_analytics",
 "technologies",
 "domains_by_html_terms",
 "live"
 ],
 "data": {
 "api": "domain_analytics",
 "function": "domains_by_html_terms",
 "se": "technologies",
 "search_terms": ["data-attrid"],
 "order_by": ["last_visited,desc"],
 "limit": 10,
 "offset": 0
 },
 "result": [
 {
 "total_count": 123456,
 "items_count": 10,
 "offset": 0,
 "offset_token": "示例分页令牌",
 "items": [
 {
 "type": "domain_technology_item",
 "domain": "santos.rs",
 "title": "Santos & Santorini",
 "description": "",
 "meta_keywords": null,
 "domain_rank": 199,
 "last_visited": "2022-12-29 03:13:49 +00:00",
 "country_iso_code": "RS",
 "language_code": "en",
 "content_language_code": "bs",
 "phone_numbers": null,
 "emails": null,
 "social_graph_urls": null,
 "technologies": {
 "servers": {
 "web_servers": []
 },
 "web_development": {
 "ui_frameworks": [],
 "javascript_libraries": [],
 "font_scripts": [],
 "javascript_frameworks": [],
 "programming_languages": []
 },
 "analytics": {
 "analytics": []
 },
 "media": {
 "video_players": []
 }
 }
 },
 {
 "type": "domain_technology_item",
 "domain": "bertuccistore.it",
 "title": "Bertucci Store",
 "description": null,
 "meta_keywords": null,
 "domain_rank": 6,
 "last_visited": "2022-12-29 03:02:33 +00:00",
 "country_iso_code": "WW",
 "language_code": "it",
 "content_language_code": "it",
 "phone_numbers": null,
 "emails": null,
 "social_graph_urls": null,
 "technologies": {
 "web_development": {
 "ui_frameworks": [],
 "font_scripts": [],
 "javascript_frameworks": [],
 "javascript_libraries": [],
 "programming_languages": []
 },
 "add_ons": {
 "wordpress_plugins": []
 },
 "analytics": {
 "analytics": []
 },
 "location": {
 "maps": []
 },
 "servers": {
 "web_servers": [],
 "reverse_proxies": [],
 "databases": []
 },
 "other": {
 "widgets": []
 },
 "content": {
 "photo_galleries": [],
 "cms": [],
 "blogs": []
 },
 "media": {
 "photo_galleries": []
 },
 "sales": {
 "ecommerce": []
 }
 }
 }
 ]
 }
 ]
 }
 ]
}

状态码与错误处理

  • 顶层 status_code 表示整个请求的处理状态
  • tasks[].status_code 表示任务状态
  • 建议同时校验这两个字段
  • 完整错误码列表请参考:/v3/appendix/errors

常见处理建议:

  • 20000:请求成功
  • 20000:按 status_message 和错误码进行重试、修正参数或记录告警
  • 使用 offset_token 拉取大批量数据时,后续请求参数保持一致,否则可能导致结果不连续或请求失败

使用建议

  1. search_terms 适合用于技术特征反查,例如查找使用某个 HTML 属性、标签或模式的网站。
  2. 若需要进一步聚焦某类网站,可结合 keywordsfiltersorder_by 一起使用。
  3. 当结果集较大时,优使用 offset_token 进行深分页,时或出 offset 范围限制。

实用场景

  • 筛选使用特定前端标记的网站:通过查找特定 HTML 标签、属性或页面,快速定位采用某种页面结构或组件模式的站点,便于技术型客户挖掘。
  • 识别潜在 CMS/建站平台用户:结合 HTML 术语与技术栈字段,反查可能使用某类建站系统或插件生态的网站,为建站迁移、插件销售或 SaaS 拓客提供线索。
  • 按国家和语言挖掘细分市场站点:结合 country_iso_codelanguage_codecontent_language_code 过滤特定区域网站,用于海外 SEO 市场研究与本地化竞争分析。
  • 锁定备特定营销技术栈的竞品网站:利用返回的 technologies 数据识别使用分析、广告、自动化营销的网站,制定竞品监测和渠道策略。
  • 批量建立技术画像站点库:按 HTML 特征批量采集域名,再结合标题、描述、联系方式和社交链接构建可运营的网站画像数据库,用于销售线索 enrichment 与行业研究。

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