指定された URL のページに対して PageSpeed 分析を実行し、PageSpeed スコア、ページの読み込み速度を上げるための提案リスト、その他の情報を返します。 実習をご覧ください。
リクエスト
HTTP リクエスト
GET https://www.googleapis.com/pagespeedonline/v4/runPagespeed
パラメータ
パラメータ名 | 値 | 説明 |
---|---|---|
必須のクエリ パラメータ | ||
url |
string |
取得して分析するための URL |
省略可能なクエリ パラメータ | ||
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 |
キャプチャによる検証の結果
使用できる値は次のとおりです。
|
|
kind |
string |
結果の種類。 | |
id |
string |
ドキュメントの正規 URL と最終ページ URL(ページのリダイレクトがある場合)。 | |
responseCode |
integer |
ドキュメントのレスポンス コード。200 は通常のページ読み込みを表します。4xx/5xx はエラーを示します。 | |
title |
string |
ブラウザのタイトルバーに表示されるページのタイトル。 | |
ruleGroups |
object |
これらの結果のルールグループごとに 1 つのエントリを含むマップ。 | |
ruleGroups.(key) |
object |
このルールグループの名前: 「SPEED」、「USABILITY」、「SECURITY」のいずれか。 | |
ruleGroups.(key).score |
integer |
このルールグループのスコア(0 ~ 100)。そのカテゴリでページをどの程度改善できるか(速度、利便性、安全性など)を示します。スコアが高いほど、改善の余地がほとんどなく、低いスコアほど、改善の余地があることを示します。 | |
ruleGroups.(key).pass |
boolean |
||
loadingExperience |
object |
エンドユーザーのページ読み込みエクスペリエンスの指標。 | |
loadingExperience.id |
string |
指標が存在する URL、パターン、またはオリジン。 | |
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 |
無線(OTA)バイト数。見積もりとしてデフォルトの gzip 圧縮戦略を使用。 | |
pageStats.cssResponseBytes |
long |
ページ上の CSS リソースの非圧縮レスポンスのバイト数。 | |
pageStats.imageResponseBytes |
long |
ページ上の画像リソースのレスポンスのバイト数。 | |
pageStats.javascriptResponseBytes |
long |
ページ上の JS リソースの非圧縮レスポンスのバイト数。 | |
pageStats.flashResponseBytes |
long |
ページ上のフラッシュ リソースのレスポンス バイト数。 | |
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 |
ロボットによって検出された URL のリスト。 | |
pageStats.transientFetchFailureUrls[] |
list |
一時的な取得に失敗した URL のリスト。 | |
pageStats.cms |
string |
ページで使用されるコンテンツ マネジメント システム(CMS)。
有効な値は次のとおりです。
|
|
formattedResults |
object |
ローカライズされた PageSpeed の結果。サーバーによってインスタンス化されて実行された PageSpeed ルールごとの ruleResults エントリが含まれます。 | |
formattedResults.locale |
string |
formattedResults のロケール(例: 「en_US」)。 | |
formattedResults.ruleResults |
object |
書式設定されたルール結果の辞書。サーバーによってインスタンス化されて実行される PageSpeed ルールごとに 1 つのエントリが含まれます。 | |
formattedResults.ruleResults.(key) |
object |
このルールの列挙型のような識別子。たとえば、「EnableKeepAlive」や「AvoidCssImport」などです。ローカライズされていません。 | |
formattedResults.ruleResults.(key).localizedRuleName |
string |
ユーザーへの表示を目的としたルールのローカライズされた名前。 | |
formattedResults.ruleResults.(key).ruleImpact |
double |
このルールの提案を実装した場合のページの高速化への影響(無制限の浮動小数点値)。影響をルール間で比較して、どのルールの提案がページの高速化に対する影響が大きいか低いかを判断できます。たとえば、圧縮を有効にすると 1 MB の節約になり、画像の最適化で 500 KB の節約になる場合、他の条件がすべて同じであれば、圧縮を有効にすることで画像最適化ルールの効果が 2 倍になります。 | |
formattedResults.ruleResults.(key).beta |
boolean |
このルールが「ベータ版」かどうか。ベータ版のルールはテスト中の新しいルールであり、総合スコアには影響しません。 | |
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 |
引数の型。URL、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 |
URL のブロックのリスト。各ブロックには見出しと URL のリストを含めることができます。各 URL には必要に応じて詳細情報を含めることができます。 | |
formattedResults.ruleResults.(key).urlBlocks[].header |
nested object |
URL のリストとともに表示される見出し。 | |
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 |
引数の型。URL、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 |
url ブロック内の URL に関する情報を提供するエントリのリスト。省略可。 | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result |
nested object |
URL に関する情報を示す形式設定文字列と、その形式設定文字列の引数のリスト。 | |
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 |
引数の型。URL、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 |
1 つの URL に関する詳細情報を提供するエントリのリスト。省略可。 | |
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 |
引数の型。URL、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 |
試してみよう:
以下の API Explorer を使用して、ライブデータに対してこのメソッドを呼び出し、レスポンスを確認してください。