对位于指定网址的网页运行 PageSpeed 分析,并返回 PageSpeed 得分、提高网页速度的建议列表以及其他信息。 立即试用。
请求
HTTP 请求
GET https://www.googleapis.com/pagespeedonline/v4/runPagespeed
参数
参数名称 | 值 | 说明 |
---|---|---|
必需的查询参数 | ||
url |
string |
要提取和分析的网址 |
可选的查询参数 | ||
filter_third_party_resources |
boolean |
指明是否应在进行 PageSpeed 分析前滤除第三方资源。
(默认值:false )
|
locale |
string |
用于对格式化结果进行本地化的语言区域 |
rule |
string |
要运行的 PageSpeed 规则;如果未指定,则执行所有规则 |
screenshot |
boolean |
指示是否应添加包含屏幕截图的二进制数据
(默认值:false )
|
snapshots |
boolean |
指示是否应包含包含快照映像的二进制数据
(默认值:false )
|
strategy |
string |
要使用的分析策略(桌面设备或移动设备),桌面设备是默认选项
可接受的值包括: <ph type="x-smartling-placeholder">
|
utm_campaign |
string |
用于分析的广告系列名称。 |
utm_source |
string |
用于分析的广告系列来源。 |
请求正文
使用此方法时请勿提供请求正文。
响应
如果成功,此方法将返回采用以下结构的响应正文:
{ "captchaResult": string, "kind": "pagespeedonline#result", "id": string, "responseCode": integer, "title": string, "ruleGroups": { (key): { "score": integer, "pass": boolean } }, "loadingExperience": { "id": string, "metrics": { (key): { "median": integer, "distributions": [ { "min": integer, "max": integer, "proportion": double } ], "category": string } }, "overall_category": string, "initial_url": string }, "pageStats": { "numberResources": integer, "numberHosts": integer, "totalRequestBytes": long, "numberStaticResources": integer, "htmlResponseBytes": long, "textResponseBytes": long, "overTheWireResponseBytes": long, "cssResponseBytes": long, "imageResponseBytes": long, "javascriptResponseBytes": long, "flashResponseBytes": long, "otherResponseBytes": long, "numberJsResources": integer, "numberCssResources": integer, "numberRobotedResources": integer, "numberTransientFetchFailureResources": integer, "numTotalRoundTrips": integer, "numRenderBlockingRoundTrips": integer, "robotedUrls": [ string ], "transientFetchFailureUrls": [ string ], "cms": string }, "formattedResults": { "locale": string, "ruleResults": { (key): { "localizedRuleName": string, "ruleImpact": double, "beta": boolean, "groups": [ string ], "summary": { "format": string, "args": [ { "type": string, "key": string, "value": string, "rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ], "secondary_rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ] } ] }, "urlBlocks": [ { "header": { "format": string, "args": [ { "type": string, "key": string, "value": string, "rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ], "secondary_rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ] } ] }, "urls": [ { "result": { "format": string, "args": [ { "type": string, "key": string, "value": string, "rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ], "secondary_rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ] } ] }, "details": [ { "format": string, "args": [ { "type": string, "key": string, "value": string, "rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ], "secondary_rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ] } ] } ] } ] } ] } } }, "version": { "major": integer, "minor": integer }, "invalidRules": [ string ], "screenshot": { "key": string, "mime_type": string, "data": bytes, "width": integer, "height": integer, "page_rect": { "left": integer, "top": integer, "width": integer, "height": integer } }, "snapshots": [ { "key": string, "mime_type": string, "data": bytes, "width": integer, "height": integer, "page_rect": { "left": integer, "top": integer, "width": integer, "height": integer } } ] }
属性名称 | 值 | 说明 | 备注 |
---|---|---|---|
captchaResult |
string |
人机识别系统验证结果
可接受的值包括: <ph type="x-smartling-placeholder">
|
|
kind |
string |
结果的类型。 | |
id |
string |
文档的规范化最终到达网址和最终到达网址(如有)。 | |
responseCode |
integer |
文档的响应代码。200 表示正常网页加载。4xx/5xx 表示出现错误。 | |
title |
string |
网页的标题,如浏览器的标题栏中所示。 | |
ruleGroups |
object |
一个映射,这些结果中的每个规则组都有一个条目。 | |
ruleGroups.(key) |
object |
此规则组的名称:“SPEED”、“USABILITY”或“SECURITY”。 | |
ruleGroups.(key).score |
integer |
此规则组的得分 (0-100),指示网页在该类别中可以提高多少(例如,网页的速度有多快、易用性多少或安全性多少)。高分表示提升空间很小,而低分表示提升空间较大。 | |
ruleGroups.(key).pass |
boolean |
||
loadingExperience |
object |
最终用户的提高网页加载速度 | |
loadingExperience.id |
string |
指标所在的网址、格式或来源。 | |
loadingExperience.metrics |
object |
||
loadingExperience.metrics.(key) |
object |
指标的类型。 | |
loadingExperience.metrics.(key).median |
integer |
||
loadingExperience.metrics.(key).distributions[] |
list |
||
loadingExperience.metrics.(key).distributions[].min |
integer |
||
loadingExperience.metrics.(key).distributions[].max |
integer |
||
loadingExperience.metrics.(key).distributions[].proportion |
double |
||
pageStats |
object |
该网页的摘要统计信息,例如 JavaScript 字节数、HTML 字节数等。 | |
pageStats.numberResources |
integer |
网页已加载的 HTTP 资源的数量。 | |
pageStats.numberHosts |
integer |
网页引用的唯一主机的数量。 | |
pageStats.totalRequestBytes |
long |
网页发送的所有请求字节的总大小。 | |
pageStats.numberStaticResources |
integer |
页面上的静态(即可缓存)资源的数量。 | |
pageStats.htmlResponseBytes |
long |
主 HTML 文档和网页上所有 iframe 的未压缩响应字节数。 | |
pageStats.textResponseBytes |
long |
网页上其他统计信息未涵盖的文本资源(即非 HTML、非脚本、非 CSS 资源)的未压缩响应字节数。 | |
pageStats.overTheWireResponseBytes |
long |
无线传输的字节数,使用默认 gzip 压缩策略作为估算值。 | |
pageStats.cssResponseBytes |
long |
网页上 CSS 资源的未压缩响应字节数。 | |
pageStats.imageResponseBytes |
long |
网页上图片资源的响应字节数。 | |
pageStats.javascriptResponseBytes |
long |
页面上 JS 资源的未压缩响应字节数。 | |
pageStats.flashResponseBytes |
long |
页面上 Flash 资源的响应字节数。 | |
pageStats.otherResponseBytes |
long |
网页上其他资源的响应字节数。 | |
pageStats.numberJsResources |
integer |
网页引用的 JavaScript 资源的数量。 | |
pageStats.numberCssResources |
integer |
网页引用的 CSS 资源数量。 | |
pageStats.numberRobotedResources |
integer |
允许机器人访问的资源的数量。 | |
pageStats.numberTransientFetchFailureResources |
integer |
暂时失败的资源数。 | |
pageStats.numTotalRoundTrips |
integer |
加载完整页面所需的往返行程 | |
pageStats.numRenderBlockingRoundTrips |
integer |
加载阻塞渲染的资源所需的往返次数 | |
pageStats.robotedUrls[] |
list |
禁止抓取的网址列表。 | |
pageStats.transientFetchFailureUrls[] |
list |
暂时提取失败网址列表。 | |
pageStats.cms |
string |
网页使用的内容管理系统 (CMS)。
可接受的值包括:
|
|
formattedResults |
object |
本地化的 PageSpeed 结果。包含与服务器实例化和运行的每个 PageSpeed 规则对应的 ruleResults 条目。 | |
formattedResults.locale |
string |
formattedResults 的语言区域,例如"en_US"。 | |
formattedResults.ruleResults |
object |
设置了格式的规则结果的字典,每个由服务器实例化和运行的 PageSpeed 规则都有一个条目。 | |
formattedResults.ruleResults.(key) |
object |
此规则的枚举类标识符。例如“EnableKeepAlive”或“AvoidCssImport”。未本地化。 | |
formattedResults.ruleResults.(key).localizedRuleName |
string |
规则的本地化名称,旨在呈现给用户。 | |
formattedResults.ruleResults.(key).ruleImpact |
double |
实施针对此规则的建议对网页加载速度的影响(无界限浮点值)。通过比较规则之间的影响,可以确定哪条规则的建议对于网页加载速度的影响会更高还是更低。例如,如果启用压缩可节省 1MB 的内存,而优化图片可节省 500kB,那么在所有其他条件相同的情况下,启用压缩规则的影响将达到图片优化规则的 2 倍。 | |
formattedResults.ruleResults.(key).beta |
boolean |
此规则是否处于“Beta 版”阶段。Beta 版规则是正在测试的新规则,不会影响总体得分。 | |
formattedResults.ruleResults.(key).groups[] |
list |
此规则所属的规则组的列表。列表中的每个条目都是“SPEED”“USABILITY”或“SECURITY”之一。 | |
formattedResults.ruleResults.(key).summary |
nested object |
相应规则的简短摘要,用于简要说明在遵守规则时应采取哪些措施以及这样做可获得哪些好处。 | |
formattedResults.ruleResults.(key).summary.format |
string |
包含 占位符的本地化格式字符串,其中“FOO”是应替换其值的参数的键。对于 HYPERLINK 参数,对于具有“FOO”键的参数,格式字符串将包含 和 。 | |
formattedResults.ruleResults.(key).summary.args[] |
list |
格式字符串的参数列表。 | |
formattedResults.ruleResults.(key).summary.args[].type |
string |
参数类型。以下各项之一:网址、STRING_LITERAL、INT_LITERAL、BYTES、DURATION、VERBATIM_STRING、PERCENTAGE、HYPERLINK 或 SNAPSHOT_RECT。
可接受的值包括:
|
|
formattedResults.ruleResults.(key).summary.args[].key |
string |
此参数的占位符键,以字符串表示。 | |
formattedResults.ruleResults.(key).summary.args[].value |
string |
参数值,采用经本地化的字符串。 | |
formattedResults.ruleResults.(key).summary.args[].rects[] |
list |
引用的屏幕矩形,尺寸以 CSS 像素为单位。这只用于 SNAPSHOT_RECT 参数。如果 SNAPSHOT_RECT 参数没有此参数,则表示该参数引用了整个快照。 | |
formattedResults.ruleResults.(key).summary.args[].rects[].left |
integer |
||
formattedResults.ruleResults.(key).summary.args[].rects[].top |
integer |
||
formattedResults.ruleResults.(key).summary.args[].rects[].width |
integer |
||
formattedResults.ruleResults.(key).summary.args[].rects[].height |
integer |
||
formattedResults.ruleResults.(key).summary.args[].secondary_rects[] |
list |
所引用的次要屏幕矩形,其尺寸以 CSS 像素为单位。这只用于 SNAPSHOT_RECT 参数。 | |
formattedResults.ruleResults.(key).summary.args[].secondary_rects[].left |
integer |
||
formattedResults.ruleResults.(key).summary.args[].secondary_rects[].top |
integer |
||
formattedResults.ruleResults.(key).summary.args[].secondary_rects[].width |
integer |
||
formattedResults.ruleResults.(key).summary.args[].secondary_rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[] |
list |
网址块列表。每个块都可能包含一个标题和一系列网址。每个网址还可以包含其他详细信息。 | |
formattedResults.ruleResults.(key).urlBlocks[].header |
nested object |
与网址列表一起显示的标题。 | |
formattedResults.ruleResults.(key).urlBlocks[].header.format |
string |
包含 占位符的本地化格式字符串,其中“FOO”是应替换其值的参数的键。对于 HYPERLINK 参数,对于具有“FOO”键的参数,格式字符串将包含 和 。 | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[] |
list |
格式字符串的参数列表。 | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].type |
string |
参数类型。以下各项之一:网址、STRING_LITERAL、INT_LITERAL、BYTES、DURATION、VERBATIM_STRING、PERCENTAGE、HYPERLINK 或 SNAPSHOT_RECT。
可接受的值包括:
|
|
formattedResults.ruleResults.(key).urlBlocks[].header.args[].key |
string |
此参数的占位符键,以字符串表示。 | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].value |
string |
参数值,采用经本地化的字符串。 | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[] |
list |
引用的屏幕矩形,尺寸以 CSS 像素为单位。这只用于 SNAPSHOT_RECT 参数。如果 SNAPSHOT_RECT 参数没有此参数,则表示该参数引用了整个快照。 | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].secondary_rects[] |
list |
所引用的次要屏幕矩形,其尺寸以 CSS 像素为单位。这只用于 SNAPSHOT_RECT 参数。 | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].secondary_rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].secondary_rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].secondary_rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].secondary_rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[] |
list |
提供网址块中网址相关信息的条目列表。可选。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result |
nested object |
提供网址相关信息的格式字符串,以及该格式字符串的参数列表。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.format |
string |
包含 占位符的本地化格式字符串,其中“FOO”是应替换其值的参数的键。对于 HYPERLINK 参数,对于键为“FOO”的参数,格式字符串将包含 和 。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[] |
list |
格式字符串的参数列表。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].type |
string |
参数类型。以下各项之一:网址、STRING_LITERAL、INT_LITERAL、BYTES、DURATION、VERBATIM_STRING、PERCENTAGE、HYPERLINK 或 SNAPSHOT_RECT。
可接受的值包括:
|
|
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].key |
string |
此参数的占位符键,以字符串表示。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].value |
string |
参数值,采用经本地化的字符串。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[] |
list |
引用的屏幕矩形,尺寸以 CSS 像素为单位。这只用于 SNAPSHOT_RECT 参数。如果 SNAPSHOT_RECT 参数没有此参数,则表示该参数引用了整个快照。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].secondary_rects[] |
list |
所引用的次要屏幕矩形,其尺寸以 CSS 像素为单位。这只用于 SNAPSHOT_RECT 参数。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].secondary_rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].secondary_rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].secondary_rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].secondary_rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[] |
list |
条目列表,用于提供有关单个网址的更多详细信息。可选。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].format |
string |
包含 占位符的本地化格式字符串,其中“FOO”是应替换其值的参数的键。对于 HYPERLINK 参数,对于具有“FOO”键的参数,格式字符串将包含 和 。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[] |
list |
格式字符串的参数列表。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].type |
string |
参数类型。以下各项之一:网址、STRING_LITERAL、INT_LITERAL、BYTES、DURATION、VERBATIM_STRING、PERCENTAGE、HYPERLINK 或 SNAPSHOT_RECT。
可接受的值包括:
|
|
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].key |
string |
此参数的占位符键,以字符串表示。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].value |
string |
参数值,采用经本地化的字符串。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[] |
list |
引用的屏幕矩形,尺寸以 CSS 像素为单位。这只用于 SNAPSHOT_RECT 参数。如果 SNAPSHOT_RECT 参数没有此参数,则表示该参数引用了整个快照。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].secondary_rects[] |
list |
所引用的次要屏幕矩形,其尺寸以 CSS 像素为单位。这只用于 SNAPSHOT_RECT 参数。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].secondary_rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].secondary_rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].secondary_rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].secondary_rects[].height |
integer |
||
version |
object |
用于生成这些结果的 Page Speed 的版本。 | |
version.major |
integer |
用于生成这些结果的 Page Speed 的主要版本号。 | |
version.minor |
integer |
用于生成这些结果的 Page Speed 的次要版本号。 | |
invalidRules[] |
list |
在请求中指定但服务器不知道如何实例化的规则列表。 | |
screenshot |
nested object |
所分析网页的 Base64 编码屏幕截图。 | |
screenshot.key |
string |
用于标识此映像的唯一字符串键(如果有)。 | |
screenshot.mime_type |
string |
图片数据的 MIME 类型(例如“image/jpeg”)。 | |
screenshot.data |
bytes |
图片数据(采用 base64 编码)。 | |
screenshot.width |
integer |
屏幕截图的宽度(以像素为单位)。 | |
screenshot.height |
integer |
屏幕截图的高度(以像素为单位)。 | |
screenshot.page_rect |
object |
||
screenshot.page_rect.left |
integer |
||
screenshot.page_rect.top |
integer |
||
screenshot.page_rect.width |
integer |
||
screenshot.page_rect.height |
integer |
||
snapshots[] |
list |
其他以各种部分呈现状态呈现的网页屏幕截图(采用 Base64 编码)。 | |
snapshots[].key |
string |
用于标识此映像的唯一字符串键(如果有)。 | |
snapshots[].mime_type |
string |
图片数据的 MIME 类型(例如“image/jpeg”)。 | |
snapshots[].data |
bytes |
图片数据(采用 base64 编码)。 | |
snapshots[].width |
integer |
屏幕截图的宽度(以像素为单位)。 | |
snapshots[].height |
integer |
屏幕截图的高度(以像素为单位)。 | |
snapshots[].page_rect |
object |
||
snapshots[].page_rect.left |
integer |
||
snapshots[].page_rect.top |
integer |
||
snapshots[].page_rect.width |
integer |
||
snapshots[].page_rect.height |
integer |
||
loadingExperience.metrics.(key).category |
string |
可接受的值包括:
|
|
loadingExperience.overall_category |
string |
可接受的值包括:
|
|
loadingExperience.initial_url |
string |
试试看!
使用下面的 API Explorer 对实际数据调用此方法,然后查看响应。