主题
OnPage API 概览
OnPage API 是一套可定制的网站抓取引擎,用于提取网站性能数据,并根据 SEO 与网站健康度指标评估页面优化。
提交网站抓取任务使用 POST /v3/on_page/task_post/。请求体为 JSON 数组,每次任务至少提供域名或 URL,以及需要抓取的最大页面数量。认证请求统一使用以下方式:
http
Authorization: Bearer smt_live_YOUR_KEY
Content-Type: application/json示例请求结构:
bash
curl -X POST "https://api.seermartech.cn/v3/on_page/task_post/" \
-H "Authorization: Bearer smt_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"target": "https://example.com",
"max_crawl_pages": 100
}
]'可的抓取参数
除域名或 URL、最大抓取页数等填信息外,还可以通过任务参数定制抓取行为:
- 自定义阈值:通过
checks_threshold设置,用于覆盖 OnPage API 响应中checks数组指标的默认阈值。 - 自定义 JavaScript 规则:通过
custom_js设置,在抓取页面时执行自定义 JavaScript 代码。 - 保存原始 HTML:通过
store_raw_html设置。启用后,可调用 Raw HTML 获取抓取页面的 HTML。 - 加载页面资源:通过
load_resources加载图片、样式表、脚本及损坏资源等。 - 执行 JavaScript:通过
enable_javascript执行页面上的 JavaScript 规则。 - 浏览器渲染:通过
enable_browser_rendering启用浏览器渲染,以测量 Core Web Vitals。 - 计算密度:通过
calculate_keyword_density获取目标网站或页面的密度数据。
部分参数可能产生额外费用。扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
获取抓取结果
网站提交抓取后,可以通过以下端点获取结果:
- Summary:返回网站发现的页面级问题汇总。
- Pages:返回已抓取页面列表、检查结果及页面性能指标。
- Pages by Resource:返回指定资源的页面及数据。
- Resources:返回网站中的资源列表图片、脚本、样式表等。
- Duplicate Tags:返回重复标题标签或描述标签的页面。
- Duplicate Content:返回与请求中指定页面存在相似的页面。
- Links:返回目标网站检测到的链接和外部链接。
- Redirect Chains:识别并追踪多级重定向问题。
- Non-indexable:返回被搜索引擎阻止索引的页面。
- Waterfall:返回页面加载速度及资源加载瀑布流数据。
- Keyword Density:返回指定网站或页面中词语的密度和出现频次。
- Raw HTML:返回请求中指定页面的 HTML。
抓取过程中可以逐步获取已经完成的页面结果,无需页面抓取完成。也可以在抓取结束后一次性获取完整结果。
抓取进度通过 Summary 响应中的 crawl_progress 字段表示。
回调与任务状态
创建任务时,可以通过 pingback_url 指定回调地址。任务完成后,本平台会向该地址发送通知。
如果使用标准任务处理方式且未指定 pingback_url,可以调用 Tasks Ready 端点获取所有已完成但尚未取回结果的任务 ID 列表。
实时页面分析
除网站级审计端点外,还可以使用以下实时端点处理单个页面:
- Instant Pages:快速扫描单个页面。
- Page Screenshot:获取单个页面截图。
这两个端点采用 Live 实时处理方式,结果会直接返回在 API 响应中,无需另行发送 GET 请求。
请求限制与强制停止
使用 Task POST 创建抓取任务时:
平台限流以认证说明中的 30/60/120 次/分钟规则为准。
- 每个 POST 请求最多 100 个任务。
- 如需提高限制,请联系平台支持团队。
OnPage API 端点(Instant Pages 和 Page Screenshot 除外)不建议在单个 POST 请求中提交多个任务,否则可能造成系统负载过高,并产生不期望的 4xx 或 5xx 错误。
Instant Pages 和 Page Screenshot 使用 Live 实时处理方式:
平台限流以认证说明中的 30/60/120 次/分钟规则为准。
- 每个请求最多 20 个任务。
- 无需通过单独的 GET 请求获取结果。
所有端点同时进行的请求数最多为 30 个。
如需强制停止指定网站的抓取过程,可调用 Force Stop 端点。
抓取来源 IP
抓取请求将从以下 IP 地址发出。如目标站点了防火墙、访问控制或 IP 白名单,请将这些地址列表:
text
94.130.93.30
168.119.141.170
168.119.99.190
168.119.99.191
168.119.99.192
168.119.99.193
168.119.99.194
68.183.60.34
134.209.42.109
68.183.60.80
68.183.54.131
68.183.49.222
68.183.149.30
68.183.157.22
68.183.149.129默认 User-Agent
本平台 OnPage 爬虫默认使用以下 User-Agent:
text
Mozilla/5.0 (compatible; RSiteAuditor)用户可以通过任务参数自定义 User-Agent。
计费说明
OnPage API 的费用取决于 Task POST 请求中设置的参数。以下参数可能产生额外费用:
load_resourcesenable_javascriptenable_browser_renderingcalculate_keyword_density
账户抓取页面数量计费。如果请求的最大页面数网站的页面数,任务完成后未使用部分会退还到账户。
扣费以响应头 X-SeerMarTech-Charge-CNY 为准。
用户可以通过 User Data 端点查询账户数据,也可以在平台账户中心查看消费。
OnPage API 可通过 Sandbox 环境进行测试。
实用场景
- 审计网站页面问题:批量抓取网站并汇总标题、描述、索引、链接及性能问题,帮助 SEO 团队制定技术优化单。
- 定位重复与重复标签:使用 Duplicate Tags 和 Duplicate Content 识别重复标题、描述及相似页面,减少耗和重复索引。
- 分析页面加载性能:启用浏览器渲染并结合 Waterfall 数据测量 Core Web Vitals,定位影响页面速度的资源和请求。
- 追踪资源与链接问题:查询页面资源、链接、外部链接及重定向链,排查失效资源、错误跳转和站结构问题。
- 监控重点页面质量:通过 Instant Pages、Keyword Density 和 Raw HTML 快速检查单页、使用及 HTML 输出。