← ブログに戻る

Google検索結果を100件取得する: 検索APIでのページネーション(2026)

Google検索APIでのページネーションの仕組み — 1〜10ページの取得、最大100件の収集、重複除去、コスト抑制。PythonとNode.jsのコード付き。

1 分で読めます

Googleは1ページあたり約10件のオーガニック結果を返します。最大100件を収集するには、pageパラメータで結果をページ送りします。serp.cheapで効率的に行う方法を紹介します。

基本

  • pageは1始まり(1 = 最初のページ)です。
  • 各ページは約10件のオーガニック結果を返します。
  • 各ページは個別に課金されるリクエストです — つまり100件 ≈ 10リクエストです。

Python: 最大100件を収集する

import requests

def fetch_results(q, gl="us", max_results=100):
    out, page = [], 1
    while len(out) < max_results:
        r = requests.post(
            "https://api.serp.cheap/v1/search",
            headers={"X-API-Key": "YOUR_KEY"},
            json={"q": q, "gl": gl, "page": page},
            timeout=30,
        )
        r.raise_for_status()
        batch = r.json()["organic"]
        if not batch:
            break          # no more results
        out += batch
        page += 1
    return out[:max_results]

results = fetch_results("best project management software")
print(len(results), "results")

Node.js

async function fetchResults(q, max = 100) {
  const out = [];
  for (let page = 1; out.length < max; page++) {
    const res = await fetch("https://api.serp.cheap/v1/search", {
      method: "POST",
      headers: { "X-API-Key": process.env.SERP_KEY, "Content-Type": "application/json" },
      body: JSON.stringify({ q, gl: "us", page }),
    });
    const { organic } = await res.json();
    if (!organic.length) break;
    out.push(...organic);
  }
  return out.slice(0, max);
}

ヒント

  • ページを結合する場合はリンクで重複除去しましょう — まれに重複が起こり得ます。
  • ページが結果を返さなくなったら早めに停止しましょう。
  • 遅延取得しましょう — 10件しか表示しないなら100件を引っ張らないこと。コストはページ数に比例します。

次に

Frequently asked questions

APIからGoogleの検索結果を10件より多く取得するには?+

pageパラメータ(1始まり)で追加ページをリクエストします。各ページは約10件のオーガニック結果を返すので、1〜10ページで最大約100件が得られます。各ページは個別に課金されるリクエストです。

ページを多く取得するとコストは増えますか?+

はい — 各ページが1リクエストです。ユーザーやジョブが実際に必要とするときだけ追加ページを遅延取得しましょう。serp.cheapではフレッシュなページが$0.0006(キャッシュヒットは$0.0003)です。

APIキーを取得

直接購入が最安, カードまたは暗号資産で支払い、KYC不要。またはマーケットプレイス経由。