[python] 이미지 크롤링 및 다운로드하기
목차
- 이미지 크롤링이란?
- 필요한 라이브러리 설치
- 이미지 크롤링과 다운로드하는 방법
- 결론
이미지 크롤링이란?
이미지 크롤링이란, 웹사이트나 웹 페이지에서 이미지를 수집하여 가져오는 과정을 말합니다. 이를 통해 웹상의 다양한 이미지를 수집하거나 원하는 이미지를 자동으로 다운로드할 수 있습니다.
필요한 라이브러리 설치
이번 예제에서는 이미지 다운로드를 위해 requests
라이브러리를, 이미지 처리를 위해 BeautifulSoup
라이브러리를 사용할 것입니다. 이 라이브러리들을 설치해야 합니다.
pip install requests
pip install beautifulsoup4
이미지 크롤링과 다운로드하는 방법
아래는 Python을 사용하여 이미지를 크롤링하고 다운로드하는 간단한 예제입니다.
import requests
from bs4 import BeautifulSoup
import os
url = 'http://example.com' # 크롤링할 웹 페이지의 URL
save_folder = 'images' # 이미지를 저장할 폴더
if not os.path.exists(save_folder): # 이미지를 저장할 폴더가 없으면 생성
os.makedirs(save_folder)
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
img_tags = soup.find_all('img') # 웹 페이지에서 모든 이미지 태그 찾기
for img in img_tags:
img_url = img['src'] # 이미지 태그에서 src 속성의 값 가져오기
img_name = img_url.split('/')[-1] # 이미지 URL에서 파일명 추출
img_data = requests.get(img_url).content # 이미지 URL로부터 이미지 데이터 가져오기
with open(os.path.join(save_folder, img_name), 'wb') as f: # 이미지를 지정한 폴더에 저장
f.write(img_data)
print('이미지 다운로드 완료')
위 코드는 쉽게 말해 웹 페이지를 가져와서 이미지 태그를 찾고, 각 이미지의 URL로부터 이미지 데이터를 다운로드하여 폴더에 저장하는 예제입니다.
결론
이렇게 Python을 사용하여 웹 페이지에서 이미지를 크롤링하고 다운로드하는 방법에 대해 알아보았습니다. 이미지 크롤링은 웹 스크래핑의 한 형태로, 웹 상의 다양한 이미지를 자동으로 가져올 수 있어 매우 유용합니다. 위의 예제 코드를 참고하여 여러분만의 이미지 크롤링 프로그램을 만들어보세요!