Google Custom Search APIを使ってみた

Posted at 2024 年 06 月 10 日

今回はGoogleの検索機能を利用できる「Google Custom Search API」を使ってみました。

Google Custom Search APIとは?

Google Custom Search APIは、Googleの検索機能をカスタム検索エンジンに組み込むためのAPIです。このAPIを使用することで、ウェブサイトやアプリケーションにGoogleの強力な検索機能を追加することができます。以下はGoogle Custom Search APIの主な特徴と機能です。

主な特徴と機能

  1. カスタム検索エンジンの作成:
    • 特定のウェブサイトやウェブページのみを検索対象とするカスタム検索エンジンを作成できます。
    • 検索対象サイトを指定することで、より関連性の高い検索結果をユーザーに提供します。
  2. 多様な検索結果の提供:
    • ウェブ検索、画像検索、ニュース検索、動画検索など、さまざまな種類の検索結果を取得できます。
    • 検索結果には、タイトル、リンク、スニペット(概要)、画像のサムネイルなどが含まれます。
  3. フィルタリングとカスタマイズ:
    • 検索結果をフィルタリングし、特定の条件に基づいて検索結果をカスタマイズできます。
    • 地域や言語、日時などで検索結果を絞り込むことが可能です。
  4. APIの利便性:
    • RESTful APIを使用して、簡単にHTTPリクエストを送信し、JSON形式のレスポンスを受け取ることができます。
    • 多くのプログラミング言語でサポートされており、統合が容易です。

Google Custom Search APIの利用手順

まず、Google Cloud Platformのアカウントを作成する必要があります。既にアカウントを持っている場合は、ログインしてください。

GCPコンソールで新しいプロジェクトを作成します。

  1. Google Cloud Consoleにログインします。
  2. ナビゲーションバーから「プロジェクトの選択」をクリックし、「新しいプロジェクトを作成」を選択します。
  3. プロジェクト名を入力し、「作成」をクリックします。
  4. プロジェクトを作成したら、Custom Search JSON APIを有効にします。
  5. 「Custom Search API」を検索し、選択します。
  6. 「Googleカスタム検索」を選択します。

  7. 「Google」を選択します。
  8. 検索エンジンIDはあとで利用しますので厳重に保管してください。
  9. さらに下の方にスクロールしてGoogle Seach Json APIの「開始する」を選択します。
  10. 「キーを取得する」選択します。
  11. APIキーが表示されますのでこちらも厳重に保管して下さい。


    以上で準備完了です。

PythonでGoogle Custom Search APIを使ってみる

サンプルコード

import requests

def google_search(api_key, cse_id, query, num=10):
    url = f"https://www.googleapis.com/customsearch/v1"
    params = {
        'key': api_key,
        'cx': cse_id,
        'q': query,
        'num': num
    }
    response = requests.get(url, params=params)
    return response.json()

# APIキーと検索エンジンIDを設定
API_KEY = 'your_api_key'
CSE_ID = 'your_cse_id'

# 検索クエリを実行
results = google_search(API_KEY, CSE_ID, 'example query')

# 結果を表示
for item in results['items']:
    print(item['title'], item['link'])

下記それぞれを設定してください。

your_api_key = APIキー

your_cse_id = 検索エンジンID

example query = 検索ワード

試しに記事執筆時点で最新の話題の「Apple Intelligence」について検索してみました。

タイトルとURLが表示されました。

DevpediaCode編集部

DevpediaCodeはWeb、AI、Iot、ローコードなどプログラムに関する最新ITテーマの情報を発信するメディアです。

お問合せ下記のURLからお願いします。

https://devpediacode.com/contact