Python×icrawlerでネット上の画像を自動収集する方法

PRについて
※このサイトはアフィリエイト広告(Amazonアソシエイト含む)を掲載しています。
スポンサーリンク
※このサイトはアフィリエイト広告(Amazonアソシエイト含む)を掲載しています。
Python×icrawlerでネット上の画像を自動収集する方法 Tips集
Python×icrawlerでネット上の画像を自動収集する方法
Pythonプログラミング逆引き大全

インターネットから自動で画像を収集するためのツールを探しているなら、Pythonライブラリ「icrawler」を使うと簡単です。

このライブラリを使うと、GoogleやBing、Flickr、Baiduといった検索エンジンから自動で画像を集めることができます。

この記事では、icrawlerを使って、複数の検索エンジン(Google、Bing、Flickr、Baidu)から画像を収集する方法をご紹介します。

ごまこ
ごまこ

インターネットで検索した画像を一気にダウンロードするにはicrawlerを使えば良いんですね!
ぜひ使い方を教えてください!

ごまお
ごまお

使い方はとっても簡単です!
ただし、インターネット上の画像をダウンロードすることになるので、著作権には充分に注意して二次利用の際には細心の注意を払ってください!

icrawlerとは?

「icrawler」は、複数の検索エンジンやウェブサイトから画像を収集できるPythonライブラリです。

指定したキーワードに基づいて自動で画像を収集し、保存できます。以下の検索エンジンをサポートしています:

  • Google
  • Bing
  • Flickr
  • Baidu

また、ウェブサイトや特定の画像URLを指定して収集することも可能です。

環境の準備

まずは、Python環境にicrawlerをインストールしましょう。

pip install icrawler

これで準備が整いました!

Googleから画像を収集するサンプルコード

まずは、Googleから「犬」の画像を100枚収集する基本的な例を見てみましょう。

from icrawler.builtin import GoogleImageCrawler

# 保存先フォルダを指定してGoogleImageCrawlerを作成
crawler = GoogleImageCrawler(storage={"root_dir": "dogs"})

# "犬"というキーワードで100枚の画像を収集
crawler.crawl(keyword="犬", max_num=100)

上記のコードを実行すると、"dogs"フォルダに100枚の犬の画像が保存されます。非常に簡単ですね!

Bingから画像を収集する方法

また、Bingから画像を収集する方法も簡単です。以下は、Bingから「猫」の画像を50枚収集するサンプルコードです。

from icrawler.builtin import BingImageCrawler

crawler = BingImageCrawler(storage={"root_dir": "cats"})
crawler.crawl(keyword="猫", max_num=50)

このコードでは、Bingから「猫」の画像を50枚収集し、catsフォルダに保存します。

Flickrから画像を収集する方法

次に、Flickrから画像を収集する方法を見てみましょう。Flickrは写真共有サービスで、高画質の写真を多数提供しています。

Flickrから画像を収集するためには、Flickr APIキーが必要です。FlickrのAPIキーを取得するには、Flickr APIのページからキーを発行してください。

APIキーを取得したら、次のコードで画像を収集できます。

from icrawler.builtin import FlickrImageCrawler

# Flickr APIキーを指定してFlickrImageCrawlerを作成
crawler = FlickrImageCrawler(api_key='YOUR_FLICKR_API_KEY', storage={"root_dir": "flowers"})

# "花"というキーワードで50枚の画像を収集
crawler.crawl(tags="花", max_num=50)

コードの解説

  • FlickrImageCrawler: Flickrから画像を収集するためのクラスです。
  • api_key: 先ほど取得したFlickr APIキーを指定します。
  • tags: 検索キーワードに相当する「タグ」を指定します。この例では「花」を検索します。

このコードを実行すると、flowersフォルダに50枚の花の画像が保存されます。

Baiduから画像を収集する方法

最後に、中国の大手検索エンジンBaiduから画像を収集する方法をご紹介します。

from icrawler.builtin import BaiduImageCrawler

# 保存先フォルダを指定してBaiduImageCrawlerを作成
crawler = BaiduImageCrawler(storage={"root_dir": "mountains"})

# "山"というキーワードで30枚の画像を収集
crawler.crawl(keyword="山", max_num=30)

コードの解説

  • BaiduImageCrawler: Baiduから画像を収集するためのクラスです。
  • keyword: Baiduで検索するキーワードです。この例では「山」を検索しています。
  • max_num: 収集する画像の枚数を指定します。このコードでは30枚の画像を収集します。

このコードを実行すると、mountainsフォルダに30枚の山の画像が保存されます。

まとめ

今回は、Pythonの「icrawler」を使って、Google、Flickr、Baidu、Bingから画像を自動収集する方法をご紹介しました。

各検索エンジンに対応したクラスを使うことで、簡単に多くの画像を集めることができるため、データセット作成や研究用データ収集に非常に役立ちます。

ぜひ、あなたのプロジェクトに応じて活用してみてください!

参考リンク

このサイトのトップページへは以下へアクセス!

Python自動処理の教科書
Tips集
ゴマフリーダムをフォローする

コメント

達人に学ぶDB設計 徹底指南書

最短コースでわかる ディープラーニングの数学

あたらしい機械学習の教科書 第3版

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

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