← ブログに戻る

JavaでのGoogle Search API:完全チュートリアル(2026年)

JavaからGoogle Search APIを呼び出す — java.net.httpの実行可能な例、JSON record、curlテスト。無料検索100回、従量課金は$0.75/1kから。

1 分で読めます

標準ライブラリだけでJavaからGoogleにクエリを送ります — serp.cheap を使うか、公式のJava SDK(Spring Boot連携付き)を導入することもできます。いずれにせよ、単純なHTTP+JSONのエンドポイントです。

まずはcurlで手早く動作確認しましょう:

curl -X POST https://api.serp.cheap/v1/search \
  -H "X-API-Key: $SERP_CHEAP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"q":"best electric cars 2026","gl":"us"}'

完全な例

1ファイル、Java 17以上で実行可能です。リクエストには java.net.http、JSONにはJackson(com.fasterxml.jackson.core:jackson-databind)を使います。まず SERP_CHEAP_API_KEY を設定してください。

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.List;

public class SerpSearch {
    static final ObjectMapper M = new ObjectMapper();

    @JsonIgnoreProperties(ignoreUnknown = true)
    record Organic(int position, String title, String link, String snippet) {}

    @JsonIgnoreProperties(ignoreUnknown = true)
    record SearchResponse(List<Organic> organic) {}

    public static void main(String[] args) throws Exception {
        String key = System.getenv("SERP_CHEAP_API_KEY");
        String body = M.writeValueAsString(new java.util.HashMap<>() {{
            put("q", "best electric cars 2026");
            put("gl", "us");
        }});

        HttpRequest req = HttpRequest.newBuilder()
            .uri(URI.create("https://api.serp.cheap/v1/search"))
            .header("X-API-Key", key)
            .header("Content-Type", "application/json")
            .POST(HttpRequest.BodyPublishers.ofString(body))
            .build();

        HttpResponse<String> res = HttpClient.newHttpClient()
            .send(req, HttpResponse.BodyHandlers.ofString());

        SearchResponse data = M.readValue(res.body(), SearchResponse.class);
        for (Organic r : data.organic()) {
            System.out.printf("%2d. %s%n    %s%n", r.position(), r.title(), r.link());
        }
    }
}

record がJSONをきれいにマッピングし、@JsonIgnoreProperties(ignoreUnknown = true) により新しいレスポンスフィールドが増えてもビルドが壊れることはありません。

Spring Boot

Springアプリでは、同じ呼び出しを RestClient(Spring 6.1以上)を使って @Service にまとめます:

@Service
public class SerpClient {
    private final RestClient http = RestClient.builder()
        .baseUrl("https://api.serp.cheap")
        .defaultHeader("X-API-Key", System.getenv("SERP_CHEAP_API_KEY"))
        .build();

    public SearchResponse search(String q, String gl) {
        return http.post().uri("/v1/search")
            .body(java.util.Map.of("q", q, "gl", gl))
            .retrieve()
            .body(SearchResponse.class);
    }
}

公式のJava SDKは、この配線に加えてリトライ、ページネーション、型付きパラメータをSpring Bootスターターとして提供しています。SerpClient をインジェクトするだけで使えます。

押さえておきたいパラメータ

次に

serp.cheapを試す

上のファイルをコピーしてキーを追加すれば、Javaでライブのgoogle検索結果が手に入ります。登録で無料検索100回 — カード不要。その後は従量課金で$0.75/1kから、クレジットは12か月間有効です。

Frequently asked questions

JavaでGoogle Search APIを呼び出すには?+

組み込みのjava.net.http.HttpClientを使ってSERP APIにJSONボディをPOSTし、レスポンスをマッピングします。serp.cheapではエンドポイントは https://api.serp.cheap/v1/search で、X-API-Keyヘッダーを付けます — 外部のHTTPライブラリは不要です。

サードパーティのJava SDKは必要ですか?+

いいえ — java.net.http(Java 11以上)と任意のJSONライブラリ(Jackson、Gson)があれば十分です。SERP APIは単純なHTTP+JSONのエンドポイントだからです。型付き呼び出し、リトライ、ページネーションをすぐに使いたい場合は、serp.cheapがSpring Boot連携付きの公式Java SDKも提供しています。

APIキーを取得

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