*! !! Diese Google Image API ist nicht mehr verfügbar! !!
python
sudo pip install httplib2
get_imgs.py
#-*- coding:utf-8 -*-
import json
import os
import urllib2
import httplib2
import shutil
# search_Suchen Sie nach Wortbild-Links
def get_img_urls(search_word, n):
img_url=[]
images_per_request=8
# https://developers.google.com/image-search/v1/jsondevguide
url = "http://ajax.googleapis.com/ajax/services/search/images?q={0}&v=1.0&imgsz=huge&rsz="+str(images_per_request)+"&start={1}"
urlencoded = urllib2.quote(search_word)
# search_Holen Sie sich n Bild-URLs, die mit dem Wort übereinstimmen
for i in range(n):
res = urllib2.urlopen(url.format(urlencoded, i*images_per_request))
data = json.load(res)
img_url += [result["url"] for result in data["responseData"]["results"]]
return img_url
#Speichern Sie die Bilddatei unter der URL
def url_download(search_word,urls):
if os.path.exists(search_word)==False:
os.mkdir(search_word)
opener = urllib2.build_opener()
http = httplib2.Http(".cache")
#Image DL für die Anzahl der URLs
for i in range(len(set(urls))):
try:
fn, ext = os.path.splitext(urls[i])
response, content = http.request(urls[i])
with open(str(i)+ext, 'wb') as f:
f.write(content)
shutil.move((str(i)+ext).encode("utf-8"), search_word)
except:
continue
#Es schlug fehl, als n 10 war. 8 ist ok
def main(search_word, n):
urls = get_img_urls(search_word, n)
url_download(search_word,urls)
if __name__ == '__main__':
main("Welpen Chiwawa", 2)
main("Chiwawa sitzt", 2)
Da * images_per_request = 8 gesetzt ist, werden im obigen Beispiel 2 * 8 Bilder erfasst.
Recommended Posts