對指定網址的網頁執行 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 |
要使用的分析策略 (電腦或行動裝置) 為預設值
可接受的值如下:
|
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 |
人機驗證 (Captcha) 結果
可接受的值如下:
|
|
kind |
string |
結果種類。 | |
id |
string |
文件的標準和最終到達網址,此網址會重新導向到後續網頁重新導向 (如果有的話)。 | |
responseCode |
integer |
文件的回應代碼。200 表示網頁正常載入。4xx/5xx 表示錯誤。 | |
title |
string |
網頁的標題,如瀏覽器的標題列中顯示。 | |
ruleGroups |
object |
對應結果中每個規則群組都有一個項目的對應。 | |
ruleGroups.(key) |
object |
這個規則群組的名稱:「SPEED」、「USABILITY」或「安全性」。 | |
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 規則規則結果項目。 | |
formattedResults.locale |
string |
formatResults 的語言代碼,例如「en_US」。 | |
formattedResults.ruleResults |
object |
格式化規則結果的字典,每個 PageSpeed 規則會有一個項目,然後由伺服器執行。 | |
formattedResults.ruleResults.(key) |
object |
這項規則的列舉類 ID。例如「EnableKeepAlive」或「AvoidCssImport」。未本地化。 | |
formattedResults.ruleResults.(key).localizedRuleName |
string |
規則的本地化名稱,目的是向使用者顯示。 | |
formattedResults.ruleResults.(key).ruleImpact |
double |
導入這項規則的建議之後,將對加快網頁載入速度造成什麼影響 (不設限的浮點值)。您可以比較各項規則的影響,藉此判斷哪項規則的建議動作對於加快網頁速度有何影響。舉例來說,若啟用壓縮功能可節省 1 MB,而最佳化圖片可省下 500 KB,啟用壓縮規則的效果就會是圖片最佳化規則的 2 倍,其他情況則相等。 | |
formattedResults.ruleResults.(key).beta |
boolean |
這項規則是否處於「Beta 版」階段。Beta 版規則是正在測試的新規則,不會影響整體分數。 | |
formattedResults.ruleResults.(key).groups[] |
list |
這項規則所屬的規則群組清單。清單中的每個項目都是「SPEED」、「USABILITY」或「安全性」。 | |
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 |
用來產生這些結果的 PageSpeed 版本。 | |
version.major |
integer |
產生這些結果時所用的 PageSpeed 主要版本號碼。 | |
version.minor |
integer |
用來產生這些結果的 PageSpeed 子版本編號。 | |
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 |
試試看!
您可以使用下方的 APIs Explorer,針對即時資料呼叫這個方法,然後查看回應。