GCP Python

【Python】Custom Search APIを使ってGoogle検索結果をスクレイピングで自動取得する

この記事は約5分で読めます。

 

 

こんにちは、ミナピピン(@python_mllover)です。

 

今回はCustom Search APIを用いてGoogle検索をPythonを使用してAPI経由で行う方法について紹介したいと思います。

 

事前準備

 

Custom Search APIを使ってGoogle検索結果をスクレイピングする方法は、以下のステップになります。

 

1. Google Cloud PlatformでCustom Search APIを有効化する。
2. APIキーを取得する。
3. PythonのプログラムにCustom Search APIを組み込む。
4. スクレイピングしたいキーワードを指定する。
5. プログラムを実行し、検索結果をスクレイピングする。

 

それでは、各ステップについて順番に解説していきます。

 

1. Google Cloud PlatformでCustom Search APIを有効化する。

Google Cloud Platformにアクセスし、左側のメニューから「APIとサービス」→「ライブラリ」を開きます。Google Custom Search APIを検索し、有効にします。

 

 

2. APIキーを取得する。

APIキーは、Custom Search APIの利用に必要なキーです。APIキーを取得するためには、Google Cloud Consoleにアクセスし、「APIとサービス」→「認証情報」を開きます。新しい認証情報を作成し、APIキーを取得します

 

 

参考記事:【GCP】GoogleCloudPlatformでプロジェクトを作成してAPI鍵の作成&有効化する

 

3. Python用のモジュールをインストール

Custom Search APIを使用するためには、Google API Clientライブラリをインストールする必要があります。以下のコマンドを使用して、Google API Clientライブラリをインストールします。

 

$ pip install google-api-python-client

 

4.カスタム検索エンジン(CSE)の作成と検索エンジンIDの取得

 

CUSTOM SEARCH APIを使用するためには他のAPIと違って、カスタム検索エンジン(CSE)の作成と検索エンジンIDの確認という手順が必要になります。

 

https://plus-pm.net/search-tracking-google-search-api/#toc21

 

Custom Search APIを使ってGoogle検索結果をスクレイピングするサンプルコード

 

import os
from datetime import datetime
import json
from googleapiclient.discovery import build
import pprint

GOOGLE_API_KEY = ''
CUSTOM_SEARCH_ENGINE_ID = ''
KEYWORD = 'プログラミング'


# Google Customサーチ結果を取得
s = build('customsearch',
          'v1',
          developerKey = GOOGLE_API_KEY)

r = s.cse().list(q = KEYWORD,
                 cx = CUSTOM_SEARCH_ENGINE_ID,
                 lr = 'lang_ja',
                 num = 10,
                 start = 1).execute()

pprint.pprint(r['items'])

APIドキュメント:https://developers.google.com/custom-search/v1/introduction

 

<おまけ>

# 検索リンクのみを抽出する
for d in r['items']:
    print(d['link'])

 

これでGoogleの検索結果が辞書型形式で取得できています。

 

終わり

 

以上が、Custom Search APIを使ってGoogle検索結果をスクレイピングする方法です。この方法を利用することで、Webサイトからのデータスクレイピングが容易になります。ただし、Googleの利用規約に従って利用することが必要です。例えば、Googleは自動的なスクレイピングを禁止していますので、注意して利用しましょう。

 

 

参考:https://qiita.com/zak_y/items/42ca0f1ea14f7046108c

 

 

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

タイトルとURLをコピーしました