主题
OnPage API:即时页面分析
POST /v3/on_page/instant_pages
本接口用于即时获取指定页面的 OnPage SEO 分析数据页面、数据、链接、资源、加载性能、结构化数据、拼写以及页面优化评分等信息。
请求方式与路径: POST /v3/on_page/instant_pages
本接口采用 Live 模式,提交请求后会直接返回任务结果,无需再调用 GET 接口查询任务状态。
计费说明
每次请求按处理任务计费。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
请求限制
平台限流以认证说明中的 30/60/120 次/分钟规则为准。
- 单次 Live API 请求最多 20 个任务。
- 单次请求中的 URL 最多来自 5 个相同域名。
- 同时进行的请求数量最多为 30 个。
- 当同一域名已有页面处于抓取队列中时,继续提交该域名的任务可能返回
40501错误。建议在前一个任务尚未完成时重复提交相同域名。
所有 POST 请求体使用 UTF-8 编码的 JSON 数组格式:
json
[
{
"url": "https://example.com/page"
}
]请求参数
基础参数
| 参数 | 类型 | 填 | 说明 |
|---|---|---|---|
url | string | 是 | 目标页面的绝对 URL。结果针对该 URL 返回。 |
custom_user_agent | string | 否 | 抓取页面时使用的自定义 User-Agent。默认值为 Mozilla/5.0 (compatible; RSiteAuditor)。 |
accept_language | string | 否 | 访问网站时使用的语言请求头。支持 xx、xx-XX、xxx-XX 等格式。未设置时,部分网站可能拒绝访问,页面可能以 resource_type: "broken" 返回。 |
store_raw_html | boolean | 否 | 是否保存抓取页面的 HTML。设为 true 后,可通过 /v3/on_page/raw_html/ 获取原始 HTML。默认值:false。 |
load_resources | boolean | 否 | 是否加载图片、样式表、脚本及损坏资源。默认值:false。启用后可能产生额外费用。 |
disable_cookie_popup | boolean | 否 | 是否禁用 Cookie 同意弹窗。默认值:false。 |
return_despite_timeout | boolean | 否 | 页面在 120 秒未加载完成并发生时时,是否仍返回已获取的数据。默认值:false。 |
浏览器与渲染参数
使用以下浏览器参数时,将 enable_javascript 或 enable_browser_rendering 设为 true。
| 参数 | 类型 | 填 | 说明 |
|---|---|---|---|
browser_preset | string | 否 | 浏览器设备预设,可选值:desktop、mobile、tablet。 |
browser_screen_width | integer | 否 | 浏览器屏幕宽度,单位为像素,范围 240–9999。设置后会忽略 browser_preset。 |
browser_screen_height | integer | 否 | 浏览器屏幕高度,单位为像素,范围 240–9999。设置后会忽略 browser_preset。 |
browser_screen_scale_factor | float | 否 | 浏览器屏幕缩放比例,范围 0.5–3。设置后会忽略 browser_preset。 |
enable_browser_rendering | boolean | 否 | 是否模拟浏览器渲染,以测量 Core Web Vitals。启用后会自动启用 enable_javascript 和 load_resources。默认值:false。 |
enable_javascript | boolean | 否 | 是否加载页面脚本。默认值:false。 |
enable_xhr | boolean | 否 | 是否页面通过 XMLHttpRequest 从服务器请求数据。启用此参数时,同时将 enable_javascript 设为 true。默认值:false。 |
browser_preset 的预设值如下:
| 预设 | 宽度 | 高度 | 缩放比例 |
|---|---|---|---|
desktop | 1920 | 1080 | 1 |
mobile | 390 | 844 | 3 |
tablet | 1024 | 1366 | 2 |
自定义脚本与校验参数
| 参数 | 类型 | 填 | 说明 |
|---|---|---|---|
custom_js | string | 否 | 在页面中执行的自定义 JavaScript。脚本最长执行时间为 700 毫秒。返回值会写 custom_js_response,字段类型取决于脚本返回值。 |
validate_micromarkup | boolean | 否 | 是否启用微数据校验。设为 true 后,可使用任务 ID 调用 /v3/on_page/microdata/。默认值:false。 |
check_spell | boolean | 否 | 是否使用 Hunspell 检查页面拼写。默认值:false。 |
checks_threshold | array | 否 | 自定义 checks 中检查项的阈值。只有整数阈值可以修改。 |
示例:获取页面 URL,并检查页面中是否存在指定脚本:
javascript
let meta = {
pageUrl: document.URL,
hasAnalytics: false,
hasTagManager: false
};
for (const script of document.scripts) {
const src = script.getAttribute("src") || "";
if (src.includes("analytics.js")) {
meta.hasAnalytics = true;
}
if (src.includes("gtm.js")) {
meta.hasTagManager = true;
}
}
meta;如果脚本为:
javascript
meta = {};
meta.url = document.URL;
meta.test = "test";
meta;则 custom_js_response 可能返回:
json
{
"url": "https://example.com/page",
"test": "test"
}代理池参数
| 参数 | 类型 | 填 | 说明 |
|---|---|---|---|
switch_pool | boolean | 否 | 是否切换代理池。大量任务并发执行时,如果偶发出现 rate-limit 或 site_unreachable 错误,可尝试启用。 |
ip_pool_for_scan | string | 否 | 指定抓取代理池位置。可选值:us、de。当页面在某个区域无法访问时,可尝试切换位置。 |
请求示例
curl
bash
curl --location --request POST \
"https://api.seermartech.cn/v3/on_page/instant_pages" \
--header "Authorization: Bearer smt_live_YOUR_KEY" \
--header "Content-Type: application/json" \
--data-raw '[
{
"url": "https://example.com/page",
"enable_javascript": true,
"custom_js": "meta = {}; meta.url = document.URL; meta;"
}
]'Python
python
import requests
url = "https://api.seermartech.cn/v3/on_page/instant_pages"
headers = {
"Authorization": "Bearer smt_live_YOUR_KEY",
"Content-Type": "application/json",
}
payload = [
{
"url": "https://example.com/page",
"enable_javascript": True,
"custom_js": "meta = {}; meta.url = document.URL; meta;",
}
]
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 = [
{
url: "https://example.com/page",
enable_javascript: true,
custom_js: "meta = {}; meta.url = document.URL; meta;",
},
];
axios
.post(
"https://api.seermartech.cn/v3/on_page/instant_pages",
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 | 请求执行耗时,例如 0.9929 sec.。 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
tasks_count | integer | tasks 数组中的任务数量。 |
tasks_error | integer | 返回错误的任务数量。 |
tasks | array | 任务结果数组。 |
任务字段
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 任务唯一标识,UUID 格式。 |
status_code | integer | 任务状态码。 |
status_message | string | 任务状态信息。 |
time | string | 任务执行耗时。 |
cost | float | 平台原始 USD 成本兼容字段;人民币实扣以 X-SeerMarTech-Charge-CNY 为准。 |
result_count | integer | result 数组中的数量。 |
path | array | URL 路径信息。 |
data | object | 创建任务时提交的参数。 |
result | array | 页面分析结果数组。 |
结果字段
| 字段 | 类型 | 说明 |
|---|---|---|
crawl_progress | string | 抓取状态:in_progress 或 finished。 |
crawl_status | object/null | 抓取会话,部分场景下为 null。 |
crawl_gateway_address | string | 当前抓取会话使用的抓取 IP 地址。 |
total_items_count | integer | 数据库中项目的总数。 |
items_count | integer | 当前返回项目数量。 |
items | array | 页面、损坏资源、重定向资源或资源项目数组。 |
items 项目类型
HTML 页面:html_page
当 resource_type 为 html 时,项目主要以下字段:
| 字段 | 类型 | 说明 |
|---|---|---|
resource_type | string | 资源类型,固定为 html。 |
status_code | integer | 页面 HTTP 状态码。 |
location | string | Location 响应头中的重定向地址。 |
url | string | 页面 URL。 |
meta | object | 页面数据与 OnPage 分析结果。 |
content | object | 页面统计与可读性数据。 |
spell | object | 拼写检查结果。启用 check_spell 后返回。 |
social_media_tags | object | 页面中的社交媒体标签及 Open Graph、Twitter Card 等。 |
page_timing | object | 页面加载和性能指标。 |
onpage_score | float | 页面 OnPage 优化评分,满分为 100。 |
total_dom_size | integer | 页面 DOM 总大小。 |
custom_js_response | string/object/integer | 自定义 JavaScript 的执行结果。 |
custom_js_client_exception | string/null | 自定义 JavaScript 执行错误信息。 |
resource_errors | object | 资源解析错误和警告。 |
broken_resources | boolean | 页面是否损坏资源。 |
broken_links | boolean | 页面是否损坏链接。 |
duplicate_title | boolean | 页面是否存在重复 Title。 |
duplicate_description | boolean | 页面是否存在重复 Description。 |
duplicate_content | boolean | 页面是否存在重复。 |
click_depth | integer | 从首页到达该页面所需的点击层级。 |
size | integer | 页面原始大小,单位为字节。 |
encoded_size | integer | 编码后的页面大小,单位为字节。 |
total_transfer_size | integer | 压缩后的页面传输大小,单位为字节。 |
fetch_time | string | 资源抓取时间,UTC 格式:yyyy-mm-dd hh-mm-ss +00:00。 |
cache_control | object | 页面缓存信息。 |
checks | object | 页面 OnPage 检查结果。 |
content_encoding | string | 编码类型。 |
media_type | string | 媒体类型,例如 text/html。 |
server | string | 服务器版本信息。 |
is_resource | boolean | 是否为单一资源。 |
last_modified | object/null | 资源变更信息。无数据时为 null。 |
sitemap | object/null | Sitemap 中的最后更新时间信息。无数据时为 null。 |
页面数据:meta
| 字段 | 类型 | 说明 |
|---|---|---|
title | string | 页面 Title。 |
charset | integer | 页面字符编码,例如 65001。 |
follow | boolean | 页面 meta robots 是否跟随链接。 |
generator | string | generator标签。 |
htags | object | HTML 标题标签信息。 |
description | string | Meta Description。 |
favicon | string | 页面 Favicon 地址。 |
meta_keywords | string/null | keywords标签。 |
canonical | string | Canonical URL。 |
internal_links_count | integer | 页面链接数量。 |
external_links_count | integer | 页面外部链接数量。 |
inbound_links_count | integer | 指向当前页面的链接数量。 |
images_count | integer | 图片数量。 |
images_size | integer | 图片总大小,单位为字节。 |
scripts_count | integer | 脚本数量。 |
scripts_size | integer | 脚本总大小,单位为字节。 |
stylesheets_count | integer | 样式表数量。 |
stylesheets_size | integer | 样式表总大小,单位为字节。 |
title_length | integer | Title 字符数。 |
description_length | integer | Description 字符数。 |
render_blocking_scripts_count | integer | 阻塞页面渲染的脚本数量。 |
render_blocking_stylesheets_count | integer | 阻塞页面渲染的样式表数量。 |
cumulative_layout_shift | float | CLS,累计布局偏移指标。 |
meta_title | string/null | 页面 meta_title 信息。 |
###统计:content
| 字段 | 类型 | 说明 |
|---|---|---|
plain_text_size | integer | 页面纯文本总大小,单位为字节。 |
plain_text_rate | integer/float | 纯文本大小与页面总大小的比值。 |
plain_text_word_count | float | 页面单词数量。 |
automated_readability_index | float | 自动可读性指数。 |
coleman_liau_readability_index | float | Coleman–Liau 可读性指数。 |
dale_chall_readability_index | float | Dale–Chall 可读性指数。 |
flesch_kincaid_readability_index | float | Flesch–Kincaid 可读性指数。 |
smog_readability_index | float | SMOG 可读性指数。 |
description_to_content_consistency | float | Description 与页面的一致性,范围 0–1。 |
title_to_content_consistency | float | Title 与页面的一致性,范围 0–1。 |
meta_keywords_to_content_consistency | float/null | Meta Keywords 与页面的一致性,范围 0–1。 |
deprecated_tags | array/null | 页面中的废弃标签。 |
duplicate_meta_tags | array | 重复的标签。 |
拼写检查:spell
| 字段 | 类型 | 说明 |
|---|---|---|
hunspell_language_code | string | 拼写检查使用的语言代码。 |
misspelled | array | 拼写错误单词数组。 |
misspelled[].word | string | 拼写错误的单词。 |
页面加载指标:page_timing
| 字段 | 类型 | 说明 |
|---|---|---|
time_to_interactive | integer | TTI,页面可交互耗时,单位为毫秒。 |
dom_complete | integer | 页面及子资源下载完成的时间,单位为毫秒。 |
largest_contentful_paint | float | LCP,最大可见的渲染耗时,单位为毫秒。 |
first_input_delay | float | FID,首次交互到浏览器响应的延迟,单位为毫秒。 |
connection_time | integer | 建立服务器连接耗时,单位为毫秒。 |
time_to_secure_connection | integer | 建立连接耗时,单位为毫秒。 |
request_sent_time | integer | 请求发送耗时,单位为毫秒。 |
waiting_time | integer | TTFB,首字节耗时,单位为毫秒。 |
download_time | integer | 浏览器接收响应耗时,单位为毫秒。 |
duration_time | integer | 接收完整响应的总耗时,单位为毫秒。 |
fetch_start | integer | 开始下载 HTML 资源的时间。 |
fetch_end | integer | 完成下载 HTML 资源的时间。 |
缓存信息:cache_control
| 字段 | 类型 | 说明 |
|---|---|---|
cachable | boolean | 页面或资源是否可缓存。 |
ttl | integer | 缓存生存时间。 |
页面检查项:checks
以下字段通常为布尔值,用于表示页面是否存在对应问题:
| 字段 | 检查 |
|---|---|
no_content_encoding | 页面未使用压缩。 |
high_loading_time | 页面加载时间 3 秒。 |
is_redirect | 页面存在 3XX 重定向。 |
is_4xx_code | 页面返回 4XX 状态码。 |
is_5xx_code | 页面返回 5XX 状态码。 |
is_broken | 页面状态码小于 200 或大于 400。 |
is_www | 页面位于 www 子域名。 |
is_https | 页面使用 HTTPS。 |
is_http | 页面使用 HTTP。 |
high_waiting_time | TTFB过 1.5 秒。 |
has_micromarkup | 页面微数据标记。 |
has_micromarkup_errors | 页面微数据标记存在错误。 |
no_doctype | 页面缺少 DOCTYPE 声明。 |
has_html_doctype | 页面 HTML DOCTYPE 声明。 |
canonical | 页面 Canonical 检查通过。 |
no_encoding_meta_tag | 页面缺少编码标签。 |
no_h1_tag | 页面缺少或存在空的 H1 标签。 |
https_to_http_links | HTTPS 页面指向 HTTP 页面的链接。 |
size_greater_than_3mb | 页面大小 3 MB。 |
meta_charset_consistency | 页面字符集与声明的字符集不一致。 |
has_meta_refresh_redirect | 页面 Meta Refresh 重定向。 |
has_render_blocking_resources | 页面阻塞渲染的资源。 |
low_content_rate | 纯文本与页面大小的比值小于 0.1。 |
high_content_rate | 纯文本与页面大小的比值大于 0.9。 |
low_character_count | 页面字符数少于 1024。 |
high_character_count | 页面字符数 256,000。 |
small_page_size | 页面小于 1024 字节。 |
large_page_size | 页面大小 1 MB。 |
low_readability_rate | Flesch–Kincaid 可读性评分低于 15。 |
irrelevant_description | Description 与页面性低于 0.2。 |
irrelevant_title | Title 与页面性低于 0.3。 |
irrelevant_meta_keywords | Meta Keywords 与页面性低于 0.6。 |
title_too_long | Title过 65 个字符。 |
has_meta_title | 页面 Meta Title。 |
title_too_short | Title 少于 30 个字符。 |
deprecated_html_tags | 页面废弃 HTML 标签。 |
duplicate_meta_tags | 页面存在重复标签。 |
duplicate_title_tag | 页面存在多个 Title 标签。 |
no_image_alt | 图片缺少 alt 属性。 |
no_image_title | 图片缺少 title 属性。 |
no_description | 页面缺少或使用空 Description。 |
no_title | 页面缺少或使用空 Title。 |
no_favicon | 页面缺少 Favicon。 |
seo_friendly_url | URL 通过 SEO 友好性检查。 |
flash | 页面 Flash素。 |
frame | 页面 frame、iframe 或 frameset 标签。 |
lorem_ipsum | 页面 Lorem Ipsum 占位文本。 |
has_misspelling | 页面存在拼写错误。在启用 check_spell 时有效。 |
seo_friendly_url_characters_check | URL 使用拉丁字母、数字和短横线。 |
seo_friendly_url_dynamic_check | URL 不动态参数。 |
seo_friendly_url_keywords_check | URL 与 Title一致。 |
seo_friendly_url_relative_length_check | URL 相对路径不 120 个字符。 |
SEO 友好 URL 综合检查以下条件:
- 相对路径长度小于 120 个字符;
- 不特殊字符;
- 不动态参数;
- URL 与页面。
任一条件不满足时,seo_friendly_url 将被判定为不通过。
损坏页面:broken_page
当页面无法正常抓取或返回错误时,resource_type 为 broken,通常:
| 字段 | 类型 | 说明 |
|---|---|---|
resource_type | string | 固定为 broken。 |
status_code | integer | 页面状态码。 |
location | string | 重定向地址。 |
url | string | 页面 URL。 |
size | integer | 资源大小,单位为字节。 |
encoded_size | integer | 编码后的资源大小。 |
total_transfer_size | integer | 压缩后的传输大小。 |
fetch_time | string | 抓取时间,UTC 格式。 |
fetch_timing | object | 抓取耗时信息。 |
cache_control | object | 缓存信息。 |
checks | object | 页面检查结果。 |
resource_errors | object | 资源错误与警告。 |
content_encoding | string | 编码类型。 |
media_type | string | 媒体类型,例如 text/html。 |
server | string | 服务器版本。 |
is_resource | boolean | 是否为单一资源。 |
last_modified | object/null | HTTP Header 最后修改时间。 |
sitemap | object/null | Sitemap 最后修改时间。 |
meta_tag | string/null | Meta 标签最后修改时间。 |
重定向页面:redirect_page
当页面发生重定向时,resource_type 为 redirect:
| 字段 | 类型 | 说明 |
|---|---|---|
resource_type | string | 固定为 redirect。 |
status_code | integer | 页面状态码。 |
location | string | 重定向目标 URL。 |
url | string | 重定向源 URL。 |
size | integer | 资源大小。重定向资源通常为 0。 |
encoded_size | integer | 编码后的资源大小。重定向资源通常为 0。 |
total_transfer_size | integer | 压缩后的传输大小。 |
fetch_time | string | 抓取时间,UTC 格式。 |
fetch_timing | object | 抓取耗时信息。 |
resource_errors | object | 资源错误与警告。 |
cache_control | object | 缓存信息。 |
checks | object | 页面检查结果。 |
content_encoding | string | 编码类型。 |
media_type | string | 媒体类型。 |
server | string | 服务器版本。 |
is_resource | boolean | 是否为单一资源。 |
last_modified | object/null | HTTP Header 最后修改时间。 |
sitemap | object/null | Sitemap 最后修改时间。 |
meta_tag | string/null | Meta 标签最后修改时间。 |
资源:resources
如果首个抓取 URL 本身是脚本、图片或样式表,结果中可能返回资源项目。
resource_type 的可选值:
scriptimagestylesheet
资源项目以下字段:
| 字段 | 类型 | 说明 |
|---|---|---|
resource_type | string | 资源类型。 |
meta | object | 资源数据。图片资源可 alternative_text、alternative_text_variations、title 和 alternative_title_variations。 |
status_code | integer | 资源所在页面的状态码。 |
location | string | 重定向地址。 |
url | string | 资源 URL。 |
size | integer | 资源原始大小,单位为字节。 |
encoded_size | integer | 编码后的资源大小。 |
total_transfer_size | integer | 压缩后的资源传输大小。 |
fetch_time | string | 资源抓取时间,UTC 格式。 |
fetch_timing | object | 资源抓取耗时。 |
cache_control | object | 资源缓存信息。 |
checks | object | 资源检查结果。 |
content_encoding | string | 编码类型。 |
media_type | string | 资源媒体类型。 |
accept_type | string | 预期资源类型,可选值 any、none、image、sitemap、robots、script、stylesheet、redirect、html、text、other、font。 |
server | string | 服务器版本。 |
is_minified | boolean | 脚本或样式表是否已压缩。适用于 script 和 stylesheet。 |
has_redirect | boolean | 资源是否存在重定向。适用于脚本和图片。 |
has_subrequests | boolean | 脚本或样式表是否额外请求。 |
original_size_displayed | boolean | 图片是否以原始尺寸展示。适用于图片。 |
resource_errors | object | 资源错误与警告。 |
last_modified | object/null | HTTP Header 最后修改时间。 |
sitemap | object/null | Sitemap 最后修改时间。 |
meta_tag | string/null | Meta 标签最后修改时间。 |
资源错误与警告
resource_errors 对象 errors 和 warnings 两个数组。
错误字段
| 字段 | 类型 | 说明 |
|---|---|---|
line | integer | 错误所在行。 |
column | integer | 错误所在列。 |
message | string | 错误文本。 |
status_code | integer | 错误状态码。 |
错误状态码:
| 状态码 | 含义 |
|---|---|
0 | 未识别错误 |
501 | HTML 解析错误 |
1501 | JavaScript 解析错误 |
2501 | CSS 解析错误 |
3501 | 图片解析错误 |
3502 | 图片缩放值为零 |
3503 | 图片尺寸为零 |
3504 | 图片格式无效 |
警告字段
| 字段 | 类型 | 说明 |
|---|---|---|
line | integer | 警告所在行。为 0 时表示警告针对整个页面。 |
column | integer | 警告所在列。为 0 时表示警告针对整个页面。 |
message | string | 警告文本。 |
status_code | integer | 警告状态码。 |
常见警告消息:
Has node with more than 60 childs.:页面存在同级嵌套 60 层的标签。Has more that 1500 nodes.:DOM 树 1500 个。HTML depth more than 32 tags.:HTML DOM 深度 32 层。
警告状态码:
| 状态码 | 含义 |
|---|---|
0 | 未识别警告 |
1 | 节点子 60 个 |
2 | DOM 节点 1500 个 |
3 | HTML 深度 32 层 |
响应示例
以下示例展示成功响应的主要结构,返回字段会根据页面状态及请求参数有所不同。
json
{
"version": "0.1.20220627",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.9929 sec.",
"cost": 0.00025,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "00000000-0000-0000-0000-000000000001",
"status_code": 20000,
"status_message": "Ok.",
"time": "0.9929 sec.",
"cost": 0.00025,
"result_count": 1,
"data": {
"api": "on_page",
"function": "instant_pages",
"url": "https://example.com/page",
"custom_js": "meta = {}; meta.url = document.URL; meta;"
},
"result": [
{
"crawl_progress": "finished",
"total_items_count": 1,
"items_count": 1,
"items": [
{
"resource_type": "html",
"status_code": 200,
"url": "https://example.com/page",
"meta": {
"title": "示例页面",
"description": "示例页面描述",
"canonical": "https://example.com/page",
"internal_links_count": 12,
"external_links_count": 3,
"images_count": 5,
"scripts_count": 8,
"title_length": 5,
"description_length": 7
},
"content": {
"plain_text_size": 2480,
"plain_text_rate": 0.42,
"plain_text_word_count": 432,
"title_to_content_consistency": 0.71,
"description_to_content_consistency": 0.47
},
"page_timing": {
"time_to_interactive": 380,
"dom_complete": 420,
"largest_contentful_paint": 650,
"first_input_delay": 0,
"waiting_time": 120,
"duration_time": 850
},
"onpage_score": 98.17,
"broken_resources": false,
"broken_links": false,
"duplicate_title": false,
"duplicate_description": false,
"checks": {
"is_https": true,
"is_redirect": false,
"is_4xx_code": false,
"is_5xx_code": false,
"no_title": false,
"no_description": false,
"no_h1_tag": false,
"seo_friendly_url": true
},
"custom_js_response": {
"url": "https://example.com/page"
}
}
]
}
]
}
]
}错误处理
请根据顶层 status_code、任务级 status_code 以及 status_message 处理异常。建议对以下问题进行重试或记录:
- 相同域名仍处于抓取队列;
- 页面无法访问;
- 页面返回 4XX 或 5XX;
- 页面加载时;
- 代理池或区域访问限制;
- JavaScript、HTML、CSS 或图片解析失败。
完整错误码请参考 /v3/appendix/errors。
实用场景
- 批量审计落地页:获取 Title、Description、H1、Canonical、链接和页面评分,快速定位影响自然搜索表现的页面问题。
- 监控 Core Web Vitals:启用浏览器渲染,采集 LCP、CLS、FID、TTI 和 TTFB,评估页面性能对 SEO 和用户体验的影响。
- 检测技术 SEO 缺陷:识别重定向、4XX/5XX、缺少 HTTPS、缺少 H1、重复标签及不友好 URL,生成开发修复单。
- 分析页面资源性能:统计脚本、样式表、图片的数量、大小、压缩状态和加载耗时,支持前端性能优化。
- 提取页面自定义信号:执行自定义 JavaScript,检测分析、标签管理器或页面特定,为 SEO 监控和营销技术治理提供数据。