본문 바로가기
웹 크롤링

웹 크롤링 - [Python]파이썬으로 웹 사이트 이미지 저장

by haries 2021. 6. 11.

오늘은 웹 페이지에 있는 이미지를 저장하는 방법을 알아보도록 합니다. 크롤링을 할 사이트는 바로

https://m.post.naver.com/viewer/postView.nhn?volumeNo=31538876&memberNo=6408050 이곳입니다. 아이즈원 밍구리(김민주)의 하스 바자 코리아 5월 화보 이미지입니다. 예쁜 밍구리의 화보 사진을 저장해보도록 할게요.

 

from selenium import webdriver
from urllib.request import urlretrieve
from urllib.request import urlopen
from bs4 import BeautifulSoup
options = webdriver.ChromeOptions()
options.add_argument('headless')

browser = webdriver.Chrome('chromedriver', chrome_options=options)
url = 'https://m.post.naver.com/viewer/postView.nhn?volumeNo=31538876&memberNo=6408050'
browser.maximize_window()
browser.get(url)
bs = BeautifulSoup(browser.page_source, 'lxml')

음.. 잘 가져온 것 같아요 bs를 출력해보니까

 

 

잘 가져왔네요. 이제 사이트에 가서 화보 이미지가 어디에 저장되어있는지 알아볼게요.

 

 

모든 밍구리의 화보 이미지가 'img'라는 속성에 저장되어있어요. 물론 이 사이트의 모든 img속성을 가진 html이 화보 이미지는 아니지만 대부분 민주니까 그대로 가져와 볼게요. 보아하니 저기 노란색 'src' 속성을 보니까 .jpg파일로 끝나는 것을 보니 이미지 파일이 여기 저장되어 있군요??? 이걸 가져와 이미지를 저장하면 되겠습니다.

 

 

a = bs.findAll('img')
for i in range(len(a)):
    b = a[i].attrs['src']
    urlretrieve (b, '{}.jpg'.format(i))

이렇게 코드를 짜서 돌려보면 밍구리의 사진이 잘 저장됨을 확인했습니다.

 

 

예쁘게 저장이 잘 되었네요. 밍구리 사진만 저장된 건 아니지만, 모든 밍구리 화보 사진을 가져왔습니다아~!

 

 

댓글