LoginSignup
7
13

More than 5 years have passed since last update.

node.jsでgoogle画像検索APIを使って、テスト用の画像を取得してみる

Posted at

ちょっとディープラーニングしたいな〜と。
……そう思ったんですが、教師データを集めるのがめんどくさいという事実が。
なので、Node.jsとgoogle画像検索を使用して必要な画像データを集めてみました。

制作物

個人的にはダウンロード処理が上手く作れたんじゃないかと思います:relaxed:
Promise.allを使うと一つ遅い処理があると後続が詰まってしまうので、そこに気をつけてみたり。

カスタム検索の作成

まずはGoogleアカウントにログインして、ここにアクセスしましょう。
Addから新しく検索エンジンを追加しましょう!

image.png

言語は日本語にして、以下のように入力して作成します。
サイトは後で削除するので実はなんでもいいです。

image.png

カスタム検索の設定

作成まで出来たので、次は設定を。
検索エンジンIDは後ほど使用するので、メモしておきましょう。
設定から画像検索をONにします。

image.png

検索するサイトを削除し、ウェブ全体を検索するようにします。
プログラム的なアクセスをできるように「使ってみる」を押します。

image.png

「GET A KEY」を押下。
Google Cloud Platformのプロジェクトを選択してあげればAPI用のKeyが出てくるので、どこかにメモしておきましょう。

image.png

プログラムの実装!

ページのTOPにリポジトリは記載したので、検索する部分だけ抜粋を!

index.js
const { google } = require('googleapis');
const customSearch = google.customsearch('v1');

const result = await customSearch.cse.list({
  cx: CSE_ID,
  q: SEARCH_KEYWORD,
  auth: API_KEY,
  searchType: 'image',
  safe: 'high',
  num: searchNum, // max:10
  start: startIndex + 1,
});

CSE_IDには検索エンジンIDを、API KEYにはAPI用のKEYが来るようにしてあげて下さい。
これでGoogle画像検索の結果が帰ってきます:kissing_heart:

:cat:実行結果:cat2:

node index.js 猫 20

image.png

これでDL用の画像を集めてみよう:heart_eyes_cat:

7
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
13