Pythonでスクレイピング! icrawler大量の画像を自動でダウンロード

eyecatch
  • URLをコピーしました!

※本ページはアフィリエイト広告を利用しています

今回はicrawlerというフレームワークを使い、Pythonプログラムで画像を自動的に収集する方法について解説します。

また、本記事は「Kerasでディープラーニング!Pythonで始める機械学習入」シリーズの手順を解説するページです。シリーズの一覧は以下をご覧ください。

\ 機械学習を学びたい人には自宅で学べるUdemyがおすすめ! /

講座単位で購入できます!

目次

icrawlerとは

icrawlerはGoogleやBingなどの検索エンジンで検索できる画像を自動で収集してくれる、クローラーのフレームワークです。
非常に少ない行のコードで、クローラーを使って簡単に大量の画像を取得することができます。

機械学習で大量に画像データが必要な場合などに有効なフレームワークです。
私の場合は学習用のデータでクワガタの画像が大量に必要だったため、今回作成したPythonプログラムでicrawlerを使って集めてみました。

icrawlerのインストール

以下のコマンドを実行してください。

pip install icrawler

以下のようなメッセージが出たらインストール完了です。

Installing collected packages: icrawler
Successfully installed icrawler-0.6.6

作成したソースコード

画像を収集するためのプログラムは以下の通りです。
Googleはクロール禁止のようなので、Bing版で作成してみました。

from icrawler.builtin import BingImageCrawler

crawler = BingImageCrawler(storage={"root_dir":"images"}) #ダウンロード先のディレクトリを指定
crawler.crawl(keyword="クワガタ", max_num=100) #クロール実行

3行目:
storageで指定したディレクトリに画像がダウンロードされます。
今回の例では.pyファイルがあるディレクトリ内に「images」というフォルダを作成し、その中に画像がダウンロードされます。

4行目:
「max_num」で指定した数値がダウンロードする画像の枚数となります。

著:山田 祥寛
¥1,650 (2024/04/23 13:21時点 | Amazon調べ)

実行結果

プログラムを実行すると以下のようにクローリングが始まり画像が次々にダウンロードされていきます。

2022-05-25 14:48:18,598 - INFO - icrawler.crawler - start crawling...
2022-05-25 14:48:18,599 - INFO - icrawler.crawler - starting 1 feeder threads...
2022-05-25 14:48:18,601 - INFO - feeder - thread feeder-001 exit
2022-05-25 14:48:18,601 - INFO - icrawler.crawler - starting 1 parser threads...
2022-05-25 14:48:18,603 - INFO - icrawler.crawler - starting 1 downloader threads...
2022-05-25 14:48:19,499 - INFO - parser - parsing result page https://www.bing.com/images/async?q=クワガタ&first=0
2022-05-25 14:48:20,594 - INFO - downloader - image #1  http://geo-sol.co.jp/wp-insects/wp-content/uploads/2014/09/yaeyamanokogirikuwagata005.jpg
2022-05-25 14:48:22,039 - INFO - downloader - image #2  https://geo-sol.co.jp/wp-insects/wp-content/uploads/2014/09/amaminokogirikuwagata003.jpg
2022-05-25 14:48:22,462 - INFO - downloader - image #3  https://geo-sol.co.jp/wp-insects/wp-content/uploads/2014/09/okinawahiratakuwagata005.jpg
2022-05-25 14:48:22,788 - INFO - downloader - image #4  https://geo-sol.co.jp/wp-insects/wp-content/uploads/2014/09/hiratakuwagata001.jpg
2022-05-25 14:48:23,110 - INFO - downloader - image #5  https://geo-sol.co.jp/wp-insects/wp-content/uploads/2014/09/amaminokogirikuwagata004.jpg
2022-05-25 14:48:23,512 - INFO - downloader - image #6  https://geo-sol.co.jp/wp-insects/wp-content/uploads/2014/09/akaasikuwagata002.jpg
2022-05-25 14:48:24,239 - INFO - downloader - image #7  http://koukokushinbun.co.jp/wp-content/uploads/2019/07/77d1212b40e308c43a92c39d3a099185.jpg
2022-05-25 14:48:24,626 - INFO - downloader - image #8  https://geo-sol.co.jp/wp-insects/wp-content/uploads/2014/09/gotouhiratakuwagata001.jpg
2022-05-25 14:48:25,149 - INFO - downloader - image #9  http://geo-sol.co.jp/wp-insects/wp-content/uploads/2014/09/kumejimanokogirikuwagata001.jpg
2022-05-25 14:48:25,783 - INFO - downloader - image #10 http://geo-sol.co.jp/wp-insects/wp-content/uploads/2014/09/okinawanokogirikuwagata001.jpg
2022-05-25 14:48:26,238 - INFO - downloader - image #11 https://geo-sol.co.jp/wp-insects/wp-content/uploads/2014/09/amamihiratakuwagata002.jpg
2022-05-25 14:48:27,018 - INFO - downloader - image #12 https://stat.ameba.jp/user_images/20191020/22/vaky1230/36/50/j/o1080144014619755451.jpg
2022-05-25 14:48:27,734 - INFO - downloader - image #13 https://maruzukan.com/sites/default/files/photos/201808/2018080421503827_0.jpg
~
~
~

ダウンロードが完了した後、指定したフォルダを見てみると100枚の画像が実際に保存されていました。

まとめ

今回はクローラーフレームワークのicrawlerをご紹介しました。以前requestsモジュールを使った方法も解説しましたが、それよりもはるかに簡単で数行のコードでスクレイピングできる非常に優秀なライブラリでした。
ぜひデータ収集に活用してみてください。

また、以下の記事で効率的にPythonのプログラミングスキルを学べるプログラミングスクールの選び方について解説しています。最近ではほとんどのスクールがオンラインで授業を受けられるようになり、仕事をしながらでも自宅で自分のペースで学習できるようになりました。

スキルアップや副業にぜひ活用してみてください。

スクールではなく、自分でPythonを習得したい方には、いつでもどこでも学べる動画学習プラットフォームのUdemyがおすすめです。

講座単位で購入できるため、スクールに比べ非常に安価(セール時1200円程度~)に学ぶことができます。私も受講しているおすすめの講座を以下の記事でまとめていますので、ぜひ参考にしてみてください。

それでは、また次の記事でお会いしましょう。

著:須藤秋良, 監修:株式会社フレアリンク
¥3,300 (2023/09/18 22:18時点 | Amazon調べ)

\ 機械学習を学びたい人には自宅で学べるUdemyがおすすめ! /

講座単位で購入できます!

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次