blog-google について
blog-google は、Google API を使ってブログの SEO とパフォーマンスを分析するスキルです。検索、インデックス、トラフィック、コンテンツ指標を扱い、設定済みの認証情報に応じたコマンドを提供します。
主な機能
- 01PageSpeed Lighthouse と CrUX 指標
- 02Search Console のクリック数とインデックス確認
- 03GA4 の自然検索トラフィックレポート
- 04YouTube 検索と NLP 分析
- 05キーワード案と PDF/HTML レポート
活用シーン
- 01公開済み記事の Core Web Vitals を確認
- 02表示回数が多く順位が 4~10 位の検索語を発見
- 03URL のインデックス状況と正規 URL を確認
- 04Google SEO パフォーマンスレポートを作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ infrasity-labs/ dev-gtm-claude-skills --skill blog-googleインストール後、Claude Code で/blog-googleを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/templates/cwv-audit-report.mdgsc-performance-report.mdindexation-status-report.mdreferences/api-reference.mdauth-setup.mdrate-limits-quotas.mdscripts/__init__.pycrux_history.pyga4_report.pygoogle_auth.pygoogle_report.pygsc_inspect.pygsc_query.pyindexing_notify.pykeyword_planner.pynlp_analyze.pypagespeed_check.pyrequirements.lockrequirements.txtrun.pysetup_environment.pyyoutube_search.py詳細
Blog Google:ブログパフォーマンス向け Google API データ
ブログのパフォーマンス分析に向けた、Google の SEO API への直接アクセスを提供します。実際の Chrome ユーザーメトリクス、インデックス登録状況、検索パフォーマンス、エンティティ分析、YouTube 動画の検索、キーワード検索ボリューム、PDF/HTML パフォーマンスレポートを利用できます。
通常の利用範囲内では、すべての API を無料で利用できます。セットアップには、API キーやサービスアカウントを備えた Google Cloud プロジェクトが必要です。
前提条件
コマンドを実行する前に、必ず認証情報を確認してください:
python3 skills/blog-google/scripts/run.py google_auth --check --json
設定ファイル: ~/.config/claude-seo/google-api.json(claude-seo と共有)
{
"api_key": "AIzaSy...",
"oauth_client_path": "/path/to/client_secret.json",
"default_property": "sc-domain:example.com",
"ga4_property_id": "properties/123456789",
"ads_developer_token": "...",
"ads_customer_id": "123-456-7890"
}
見つからない場合は、references/auth-setup.md を読み、セットアップをユーザーに案内してください。
認証情報のティア
| ティア | 検出条件 | 利用可能なコマンド |
|---|---|---|
| 0(API キー) | api_key が存在 | pagespeed、crux、crux-history、youtube、nlp |
| 1(OAuth/SA) | + OAuth トークンまたはサービスアカウント | ティア 0 + gsc、inspect、index |
| 2(フル) | + ga4_property_id が設定済み | ティア 1 + ga4 |
| 3(Ads) | + ads_developer_token + ads_customer_id | ティア 2 + keywords |
コマンドを実行する前に、検出されたティアを必ず伝えてください。
クイックリファレンス
| コマンド | 機能 | ティア |
|---|---|---|
/blog google setup | API 認証情報の確認/設定 | : |
/blog google pagespeed <url> | PSI Lighthouse + CrUX フィールドデータ | 0 |
/blog google crux <url> | CrUX フィールドデータのみ(p75 メトリクス) | 0 |
/blog google crux-history <url> | 25 週間の CWV トレンド分析 | 0 |
/blog google youtube <query> | YouTube 動画検索(再生回数、いいね数、再生時間) | 0 |
/blog google nlp <url-or-text> | NLP エンティティ抽出 + 感情分析 | 0 |
/blog google gsc <property> | Search Console:クリック数、表示回数、CTR、掲載順位 | 1 |
/blog google inspect <url> | URL 検査:インデックス状況、正規 URL | 1 |
/blog google index <url> | Indexing API に URL を送信 | 1 |
/blog google ga4 [property-id] | GA4 オーガニックトラフィックレポート | 2 |
/blog google keywords <seed> | Google Ads キーワードプランナーのキーワード候補 | 3 |
/blog google report <type> | PDF/HTML パフォーマンスレポート | : |
/blog google quotas | すべての API のレート制限を表示 | : |
PageSpeed + CrUX
/blog google pagespeed <url>
公開済みのブログ記事について、Lighthouse のラボデータと CrUX のフィールドデータを組み合わせて表示します。
スクリプト: python3 skills/blog-google/scripts/run.py pagespeed_check <url> --json
リファレンス: references/api-reference.md
ラボスコア(特定時点の Lighthouse)とフィールドデータ(過去 28 日間の Chrome ユーザーメトリクス)を統合して出力します。CrUX はまず URL レベルで試行し、失敗した場合はオリジンレベルに切り替えます。
/blog google crux <url>
CrUX フィールドデータのみを取得します(Lighthouse の実行なし)。より高速です。
スクリプト: python3 skills/blog-google/scripts/run.py pagespeed_check <url> --crux-only --json
/blog google crux-history <url>
CrUX の 25 週間の履歴トレンドを表示します。CWV メトリクスが改善、安定、悪化のいずれの傾向にあるかが分かります。
スクリプト: python3 skills/blog-google/scripts/run.py crux_history <url> --json
Search Console
/blog google gsc <property>
過去 28 日間の検索アナリティクス:クリック数、表示回数、CTR、掲載順位を取得します。
スクリプト: python3 skills/blog-google/scripts/run.py gsc_query --property <property> --json
デフォルト: 28 日間、dimensions=query,page、type=web、limit=1000。
クイックウィン検出機能も含まれます。表示回数が多く、掲載順位が 4~10 位のクエリを検出します。
/blog google inspect <url>
URL 検査:Google による実際のインデックス登録状況を確認します。
スクリプト: python3 skills/blog-google/scripts/run.py gsc_inspect <url> --json
返される情報:判定(PASS/FAIL)、カバレッジの状態、robots.txt の状態、インデックス登録の状態、ページの取得状態、正規 URL の選択、モバイルユーザビリティ、リッチリザルト。
一括検査の場合:python3 skills/blog-google/scripts/run.py gsc_inspect --batch <file> --json
Indexing API
/blog google index <url>
URL の更新を Google に通知します。新しいブログ記事を送信して、インデックス登録を早めます。
スクリプト: python3 skills/blog-google/scripts/run.py indexing_notify <url> --json
リファレンス: references/api-reference.md
Indexing API の公式な対象は、JobPosting ページおよび BroadcastEvent/VideoObject ページです。 この制限について、必ずユーザーに伝えてください。1 日あたりの上限:公開リクエスト 200 件。
一括処理の場合:python3 skills/blog-google/scripts/run.py indexing_notify --batch <file> --json
GA4 トラフィック
/blog google ga4 [property-id]
オーガニックトラフィックレポート:日次セッション数、ユーザー数、ページビュー数、直帰率、エンゲージメント。
スクリプト: python3 skills/blog-google/scripts/run.py ga4_report --property <id> --json
デフォルト: 28 日間。オーガニック検索チャネルグループでフィルタリングされます。
ランディングページの上位を取得する場合:python3 skills/blog-google/scripts/run.py ga4_report --property <id> --report top-pages --json
YouTube(動画の検索)
YouTube への言及は、AI の可視性との相関が最も強い指標です(相関係数 0.737、Ahrefs の 75K ブランドを対象)。 無料で、API キーのみが必要です。blog-write と blog-rewrite が動画の埋め込みに使用します。
/blog google youtube <query>
ブログのトピックに関連する動画を YouTube で検索します。
スクリプト: python3 skills/blog-google/scripts/run.py youtube_search search "<query>" --json
割り当て量: 1 回の検索につき 100 ユニット(無料枠は 1 日あたり 10,000 ユニット)。
タイトル、チャンネル、再生回数、高評価数、再生時間、説明、タグを返します。
動画の詳細とコメントを取得する場合:python3 skills/blog-google/scripts/run.py youtube_search video <video_id> --json
NLP コンテンツ分析
Google 独自のエンティティ/感情分析です。ブログコンテンツの E-E-A-T スコアを高めます。
/blog google nlp <url-or-text>
NLP の完全な分析:エンティティ、感情、コンテンツ分類。
スクリプト: python3 skills/blog-google/scripts/run.py nlp_analyze --url <url> --json
無料枠: 月あたり 5,000 ユニット。GCP プロジェクトで課金を有効にする必要があります。
エンティティ抽出のみの場合:python3 skills/blog-google/scripts/run.py nlp_analyze --url <url> --features entities --json
キーワード調査(Google Ads)
標準的なキーワード検索ボリュームデータです。Google Ads アカウントが必要です(Tier 3)。
/blog google keywords <seed>
シード語句からキーワード候補を生成し、ブログのトピックを調査します。
スクリプト: python3 skills/blog-google/scripts/run.py keyword_planner ideas "<seed>" --json
検索ボリュームを調べる場合:python3 skills/blog-google/scripts/run.py keyword_planner volume "<kw1>,<kw2>" --json
レポート
/blog google report <type>
グラフ付きのプロフェッショナルな PDF/HTML レポートを生成します。
スクリプト: python3 skills/blog-google/scripts/run.py google_report --type <type> --data <json> --domain <domain> --format pdf
| 種類 | 入力 | 出力 |
|---|---|---|
cwv-audit | PSI + CrUX + CrUX History データ | ゲージとタイムライン付きの Core Web Vitals 監査 |
gsc-performance | GSC クエリデータ | クエリテーブル付きの Search Console レポート |
indexation | 一括検査データ | カバレッジのドーナツグラフ付きインデックス登録状況 |
full | すべてのデータを統合 | 包括的な Google SEO レポート |
注: PDF の生成にはシステムライブラリが必要です:sudo apt install libpango1.0-dev libcairo2-dev。
weasyprint が利用できない場合は HTML にフォールバックします。
レート制限
| API | 1 分あたり | 1 日あたり | 認証 |
|---|---|---|---|
| PSI v5 | 240 QPM | 25,000 QPD | API キー |
| CrUX + History | 150 QPM(共有) | 無制限 | API キー |
| GSC Search Analytics | 1,200 QPM/site | 30M QPD | サービスアカウント |
| GSC URL Inspection | 600 QPM | 2,000 QPD/site | サービスアカウント |
| Indexing API | 380 RPM | 公開 200 件/日 | サービスアカウント |
| GA4 Data API | 同時 10 件(360 では 50 件) | Core Token 200K/日(360 では 2M) | サービスアカウント |
| YouTube Data | : | 10,000 ユニット/日 | API キー |
| NLP API | : | 5,000 ユニット/月 | API キー(課金) |
詳細な割り当て量の管理については、references/rate-limits-quotas.md をお読みください。
ブログワークフローの統合
このスキルはユーザーが呼び出せる(/blog google pagespeed)だけでなく、ほかのブログサブスキルから内部的に呼び出すこともできます。
- blog-seo-check:公開済みの投稿 URL で PSI + CrUX を実行し、最新の CWV データを取得します
- blog-rewrite:NLP エンティティ分析を行い、E-E-A-T のエンティティの不足を特定します
- blog-geo:GSC のパフォーマンスデータを使用して、実際の検索表示に関するインサイトを取得します
- blog-audit:公開済みのブログ URL 全体を対象に、CWV とインデックス登録状況を一括で確認します
- blog-write / blog-rewrite:動画埋め込み用の YouTube 検索を行います
認証情報が設定されていない場合は、適切にフォールバックします。
技術上の注意
- INP は 2024 年 3 月 12 日に FID に置き換わりました。FID には言及しないでください。
- CrUX の CLS 値は文字列としてエンコードされています(例:「0.05」)。スクリプトで解析されます。
- CrUX の 404 は Chrome のトラフィックが不十分であることを意味し、認証エラーではありません。
- Search Analytics のデータには 2~3 日の遅延があります。
- Indexing API は、公式には JobPosting/BroadcastEvent ページ専用です。
- 通常の利用量であれば、使用する Google API はすべて無料です。
エラー処理
| シナリオ | 対応 |
|---|---|
| 認証情報が設定されていない | /blog google setup を実行します。Tier 0 のコマンド(API キーのみ)を一覧表示します。 |
| サービスアカウントに GSC へのアクセス権がない | GSC > Settings > Users > Add で client_email を追加します。 |
| CrUX データを利用できない(404) | Chrome のトラフィックが不十分です。フォールバックとして PSI のラボデータを使用します。 |
| GA4 プロパティが見つからない | GA4 Admin > Property Details でプロパティ ID を確認します。 |
| Indexing API のクォータを超過した | 上限は 1 日あたり 200 件です。最も重要な URL を優先します。 |
| レート制限(429) | 待機してから、指数バックオフで再試行します。 |