Я написал скрипт для загрузки изображений из Google Search Search, который в настоящее время загружает 100 оригинальных изображений
оригинальный скрипт, который я написал в ответе stackoverflow
Python - Загрузка изображений из GoogleПоиск изображений?
, которые я подробно объясню, как я собираю ссылки на оригинальные изображения из Google. Поиск изображений с помощью urllib2 и BeautifulSoup
, например, если вы хотите очистить изображения фильматерминатор 3 из поиска картинок Google
query= "Terminator 3"
query= '+'.join(query.split()) #this will make the query terminator+3
url="https://www.google.co.in/search?q="+query+"&source=lnms&tbm=isch"
header={'User-Agent':"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.134 Safari/537.36"
}
req = urllib2.Request(url,headers=header)
soup= urllib2.urlopen(req)
soup = BeautifulSoup(soup)
переменная суп выше содержит HTML-код запрашиваемой страницы, теперь нам нужно извлечь изображения, для этого вам нужно открыть веб-страницу в вашем браузере и и сделатьосмотрите элемент на изображении
здесь вы найдете теги, содержащие изображение URL
например для изображения Google я нашел "div", {"class": "rg_meta"}содержащий ссылку на изображение
, вы можете выполнить поиск по документации BeautifulSoup
print soup.find_all("div",{"class":"rg_meta"})
u получите списокрезультаты как
<div class="rg_meta">{"cl":3,"cr":3,"ct":12,"id":"C0s-rtOZqcJOvM:","isu":"emuparadise.me","itg":false,"ity":"jpg","oh":540,"ou":"http://199.101.98.242/media/images/66433-Terminator_3_The_Redemption-1.jpg","ow":960,"pt":"Terminator 3 The Redemption ISO \\u0026lt; GCN ISOs | Emuparadise","rid":"VJSwsesuO1s1UM","ru":"http://www.emuparadise.me/Nintendo_Gamecube_ISOs/Terminator_3_The_Redemption/66433","s":"Screenshot Thumbnail / Media File 1 for Terminator 3 The Redemption","th":168,"tu":"https://encrypted-tbn2.gstatic.com/images?q\\u003dtbn:ANd9GcRs8dp-ojc4BmP1PONsXlvscfIl58k9hpu6aWlGV_WwJ33A26jaIw","tw":300}</div>
приведенный выше результат содержит ссылку на наш URL-адрес изображения
http://199.101.98.242/media/images/66433-Terminator_3_The_Redemption-1.jpg
вы можете извлечь эти ссылки и изображения следующим образом
ActualImages=[]# contains the link for Large original images, type of image
for a in soup.find_all("div",{"class":"rg_meta"}):
link , Type =json.loads(a.text)["ou"] ,json.loads(a.text)["ity"]
ActualImages.append((link,Type))
for i , (img , Type) in enumerate( ActualImages):
try:
req = urllib2.Request(img, headers={'User-Agent' : header})
raw_img = urllib2.urlopen(req).read()
if not os.path.exists(DIR):
os.mkdir(DIR)
cntr = len([i for i in os.listdir(DIR) if image_type in i]) + 1
print cntr
if len(Type)==0:
f = open(DIR + image_type + "_"+ str(cntr)+".jpg", 'wb')
else :
f = open(DIR + image_type + "_"+ str(cntr)+"."+Type, 'wb')
f.write(raw_img)
f.close()
except Exception as e:
print "could not load : "+img
print e
вуаляВы можете использовать этот скрипт для загрузки изображений из поиска Google
или для сбора обучающих изображений
. Для полностью работающего скрипта вы можете получить его здесь
https://gist.github.com/rishabhsixfeet/8ff479de9d19549d5c2d8bfc14af9b88