2

コンピュータ ビジョンに使用する画像の膨大なデータセットを取得したいと考えています。

したがって、クエリを指定してインターネット画像からダウンロードする必要があります(例では「顔」)。

Google 画像 API を使用しようとしましたが、約 60 枚の画像しか取得できませんでした。この裏技で100までいける…

import re
import subprocess
import urllib2

#Parameters
query = "face"
AGENT_ID   = "Mozilla/5.0 (X11; Linux x86_64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1"
GOOGLE_URL = "https://www.google.com/search?q="+ query +\
"&source=lnms&tbm=isch&sa=X&ei=T2KSUtD4Hsim4gSwmYGIBw&sqi=2&ved=0CAcQ_AUoAQ&biw=1104&bih=591"

#The main line
html_page = subprocess.check_output(["curl", "-L", "-A", AGENT_ID, GOOGLE_URL], stderr=subprocess.STDOUT)

# Parsing out the images urls
results = []
for division in re.findall(r'<div.*?</div>(?ims)', html_page):
    try:
        results.append(re.findall(r'imgurl=&amp|imgurl=(.*?\.(?:jpg|gif|png|jpeg|bmp))(?ims)', division)[0])
    except IndexError:
        pass
results = [i for i in  results if i != ""]

約500枚以上の画像を取得する方法はありますか?

4

0 に答える 0