2013-08-28 13 views
5

szukam złapać pełny rozmiar zdjęć produktów z hereBeautifulSoup - Jak otworzyć obrazy i pobierz je

moje myślenie było:

  • Śledź link obrazu
  • Pobierz obraz
  • Powrót
  • Powtórz dla zdjęć n + 1

Wiem, jak otworzyć miniatury obrazów, ale nie mogę uzyskać obrazów w pełnym rozmiarze. Jakieś pomysły na to, jak można to zrobić?

Odpowiedz

13

To będzie Ci wszystkie URL obrazów:

import urllib2 
from bs4 import BeautifulSoup 

url = "http://icecat.biz/p/toshiba/pscbxe-01t00een/satellite-pro-notebooks-4051528049077-Satellite+Pro+C8501GR-17732197.html" 
html = urllib2.urlopen(url) 
soup = BeautifulSoup(html) 

imgs = soup.findAll("div", {"class":"thumb-pic"}) 
for img in imgs: 
     print img.a['href'].split("imgurl=")[1] 

wyjściowa:

http://www.toshiba.fr/contents/fr_FR/SERIES_DESCRIPTION/images/g1_satellite-pro-c850.jpg 
http://www.toshiba.fr/contents/fr_FR/SERIES_DESCRIPTION/images/g4_satellite-pro-c850.jpg 
http://www.toshiba.fr/contents/fr_FR/SERIES_DESCRIPTION/images/g2_satellite-pro-c850.jpg 
http://www.toshiba.fr/contents/fr_FR/SERIES_DESCRIPTION/images/g5_satellite-pro-c850.jpg 
http://www.toshiba.fr/contents/fr_FR/SERIES_DESCRIPTION/images/g3_satellite-pro-c850.jpg 

I ten kod jest do pobierania i zapisywania tych obrazów:

import os 
import urllib 
import urllib2 
from bs4 import BeautifulSoup 

url = "http://icecat.biz/p/toshiba/pscbxe-01t00een/satellite-pro-notebooks-4051528049077-Satellite+Pro+C8501GR-17732197.html" 
html = urllib2.urlopen(url) 
soup = BeautifulSoup(html) 

imgs = soup.findAll("div", {"class":"thumb-pic"}) 
for img in imgs: 
     imgUrl = img.a['href'].split("imgurl=")[1] 
     urllib.urlretrieve(imgUrl, os.path.basename(imgUrl)) 
+0

niektóre inne przedmioty na tej stronie nie mają zdjęć w pełnej rozdzielczości (zdjęcia zostały przeniesione lub usunięte). Tak więc jedyną opcją jest pobranie miniaturek – ton1c

+0

Hi ton1c Czy masz stronę profilu kariery? – Ninja2k

Powiązane problemy