min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

RaspberryPi Google Custom Search API で画像収集(Python 3)

 

このサイトのとおりやってみる。

qiita.com

まずは カスタム検索 で新しい検索エンジンを作成する。

カスタム検索

・「検索するサイト」には www.google.co.jp と入れておく(この後削除する)。

・「言語」は日本語に変更する。

・「作成」をクリック。

f:id:min117:20170722182931p:plain

・「コントロールパネル」を開く。

f:id:min117:20170722183037p:plain

・「画像検索」を オン にする。

・「言語」が日本語なのを確認。

・「検索するサイト」は「追加したサイトを重視して、ウェブ全体を検索する」に。

・「www.google.co.jp」を選択して「削除」する。

f:id:min117:20170722183157p:plain

・「検索エンジンID」をクリックして、出てくる文字列を控えておく。

f:id:min117:20170722183353p:plain

ーーー

Custom Search API を獲得するために、Google Cloud Platform Cosole に行く。

Google Cloud Platform Console

f:id:min117:20170722183655p:plain

左メニュー「認証情報」から、サーバーキーを控える。

f:id:min117:20170722183730p:plain

Python スクリプトについては、冒頭のサイトどおり。

f:id:min117:20170722183752p:plain

 ソース記述。まんま写しだけど、あえてコピペでなく手書きする。

Python3 にて。

$ vim get_image.py

f:id:min117:20170722212754p:plain

実行してみる。

$ ./get_image.py

f:id:min117:20170722210608p:plain

httplib2 でエラーになった。このへん参照して解消する。

HTTPウェブサービス - Dive Into Python 3 日本語版

f:id:min117:20170722211752p:plain

なんだか分かりやすい文章。あとでじっくり読む。

f:id:min117:20170722211805p:plain

httplib2 のインストールはこのへん。

ytsuda.hateblo.jp

$ pip install httplib2

f:id:min117:20170722212009p:plain

インストール完了。再度実行してみる。

$ ./get_image.py 

f:id:min117:20170722210516p:plain

あれ?エラーだ。python3 を明示して実行してみる。

$ python3 ./get_image.py

f:id:min117:20170722212523p:plain

url は取れている。なぜかダウンロードだけ失敗しているようだ。

原因調査。31行目が間違っていた。

(誤)splittext

(正)splitext

f:id:min117:20170722214455p:plain

直したので再度実行してみる。

※ ついでなので、41行目と43行目(検索対象文字列)を変えて、スクリプト名も少し変えた。

$ python3 ./get_image_gakki.py

f:id:min117:20170722215007p:plain

うむ。うまくいった。APIの制限によるとMAXで10枚までの検索ができるらしい。今回は5枚。

f:id:min117:20170722215317p:plain

しっかりダウンロードできている(1枚は変な画像が入っているが気にしない)。あとで改造して、cgi-binから枚数指定してダウンロードできるようにしてみる。