🙆♀️
【Python】icrawlerを使って画像データを簡単に収集する
機械学習やディープラーニングで画像データを集めたい時があると思います。
icrawlerというPythonライブラリーを使えば、集めたい画像と枚数を指定するだけで、ネットから簡単に画像データを収集することができます。
iclawlerとは
Webクローラーのミニフレームワークです。モジュール化により、使いやすく拡張性も高い設計になっています。BingやGoogleなどの検索エンジンに対応しています。
ライブラリーのインポート
まずは!pip install icrawler
でライブラリをインストールしましょう。
次に、以下のコードで、必要なモジュールをインポートしましょう。今回は、Bing用のモジュールを使用します。
from icrawler.builtin import BingImageCrawler
シマウマの画像を100枚とってみる
まずは1種類(シマウマ)の画像をとってみましょう。
crawler = BingImageCrawler(storage = {'root_dir' : './image'})
crawler.crawl(keyword = 'シマウマ', max_num = 100)
ちゃんととれていますね。
パンダ,キリン、ゴリラの画像を50枚ずつとってみる
複数の種類(パンダ・キリン・ゴリラ)の画像をとってみます
keywords = ['パンダ', 'キリン', 'ゴリラ']
for keyword in keywords:
crawler = BingImageCrawler(storage = {'root_dir' : './image/' + keyword})
crawler.crawl(keyword = keyword, max_num = 50)
こちらもちゃんととれています。
さいごに
今回はBingを検索エンジンとしたライブラリになりますが、Googleを指定することも可能です。
こちらの公式ドキュメントも参照してみてください。
Discussion