PythonでBing.comから大量の画像をダウンロードできるライブラリを使用する

PythonでBing.comから大量の画像をダウンロードできるライブラリを使用してみます。

bing-image-downloader(https://github.com/gurugaurav/bing_image_downloader)は、Bing.com から大量の画像をダウンロードすることができるライブラリです。非同期URLを使用し、高速でのダウンロードが可能となります。

Githubにも書かれていますが、著作権を侵害している画像のダウンロードや使用はご遠慮ください。

■Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)

■bing-image-downloaderをインストールする

それでは、bing-image-downloaderをインストールするために、今回はpipを経由してインストールを行うので、まずWindowsのコマンドプロンプトを起動します。

pip install bing-image-downloader

起動後、上記のコマンドを入力し、Enterキーを押します。

なお、今回は、pythonランチャーを使用しており、Python Version 3.8.5にインストールを行うために、pipを使う場合にはコマンドでの切り替えを行います。

py -3.8 -m pip install bing-image-downloader

切り替えるために、上記のコマンドを入力し、Enterキーを押します。

Defaulting to user installation because normal site-packages is not writeable
Collecting bing-image-downloader
Downloading bing_image_downloader-1.1.1-py3-none-any.whl (5.7 kB)
Installing collected packages: bing-image-downloader
Successfully installed bing-image-downloader-1.1.1

Enterキーを押すと、インストールが開始され、上記のように「Successfully installed」と表示されます。これが表示されれば、bing-image-downloaderが正常にインストールされたことになります。

なお、今回はbing-image-downloaderのバージョン1.1.1をインストールしました。

■bing-image-downloaderを使用し、画像をダウンロードする

インストール後、bing-image-downloaderを使用し、画像をダウンロードするスクリプトを書いていきます。

■コード

from bing_image_downloader import downloader

query_string = "猫"

downloader.download(query_string,output_dir=r'C:\Users\user_\test',adult_filter_off=True,timeout=60,verbose= True)

画像をダウンロードするためには、importでbing-image-downloaderモジュールを呼び出します。その後に、query_stringという変数を作成し、その中に検索する文字列を格納します。今回は日本語の文字列を指定しています。

格納後、downloader.download()関数を使用します。括弧内には、第1の引数,パラメーターとして、検索する文字列を格納したquery_string変数を渡します。第2の引数,パラメーターとして、ダウンロードした画像の出力先(保存先)のディレクトリ(output_dir)を渡します。

第3の引数,パラメーターとして、アダルトフィルタリングを無効にする(adult_filter_off)指示を渡します。第4の引数,パラメーターとして、接続のタイムアウト(timeout)(秒単位)を渡します。第5の引数,パラメーターとして、ダウンロードしたメッセージを表示する(verbose)ことを有効にする指示を渡します。

これでBing.comから画像をダウンロードすることができます。

■実行

このスクリプトを「bing_img.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行すると、「Downloading Image #1 from URL(画像1をURLからダウンロードする)」と出力され、ダウンロードが開始されます。その後、「File Downloaded !(ファイルをダウンロードしました!」を出力され、出力先(保存先)のディレクトリへの画像ダウンロードが完了となります。

出力先(保存先)のディレクトリを確認すると、検索する文字列のフォルダが生成されていることが確認できました。フォルダ内を確認すると、指定した画像がダウンロードされ保存されていることが確認できました。

コメント

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