Python으로 이미지 크롤링 다운로드 해보기
검색엔진을 네이버를 사용
1. 먼저 필요한 패키지를 다운로드 받음
필요한 패키지: beautifulsoup4, requets
터미널 또는 cmd창에
pip install beautifulsoup4
pip install requests
입력 후 Enter
2. 패키지 import 하기
from urllib.request import urlopen
from bs4 import BeautifulSoup as bs
from urllib.parse import quote_plus
1) url 오픈을 위한 패키지
2) beautifulsoup4를 사용하기 위한 패키지
3) url을 구성요소로 구문 분석하기 위한 패키지
3. url 가져오기
baseUrl = 'https://search.naver.com/search.naver?where=image&sm=tab_jum&query=' # 네이버 검색url
plusUrl = input('검색어를 입력하세요 : ') # 검색어 질문
url = baseUrl + quote_plus(plusUrl) # url로 이동하기위한 쿼리문자열 만들기
html = urlopen(url) # url 열기
soup = bs(html, "html.parser")
img = soup.find_all(class_='_img', limit = 50) #클래스가 _img인 사진 50장으로 제한
4. 이미지 가져오기 및 다운로드
n = 1
for i in img: # 이미지를 50개 저장하기 위한 반복문
imgUrl = i['data-source']
with urlopen(imgUrl) as f:
with open('./img/' + plusUrl + str(n)+'.jpg','wb') as h: # 이미지 + 사진번호 + 확장자는 jpg
img = f.read() #이미지 읽기
h.write(img) # 이미지 저장
n += 1
print('다운로드 완료')
결과 화면을 확인하기 전에 해당 python파일이 있는 곳에 img라는 폴더를 생성해야 함( 다운로드할 디렉터리 이름을 img로 해놨기 때문)
5. 전체 코드
from urllib.request import urlopen
from bs4 import BeautifulSoup as bs
from urllib.parse import quote_plus
baseUrl = 'https://search.naver.com/search.naver?where=image&sm=tab_jum&query=' # 네이버 검색url
plusUrl = input('검색어를 입력하세요 : ') # 검색어 질문
url = baseUrl + quote_plus(plusUrl) # url로 이동하기위한 쿼리문자열 만들기
html = urlopen(url) # url 열기
soup = bs(html, "html.parser")
img = soup.find_all(class_='_img', limit = 50) #클래스가 _img인 사진 50장으로 제한
n = 1
for i in img: # 이미지를 50개 저장하기 위한 반복문
imgUrl = i['data-source']
with urlopen(imgUrl) as f:
with open('./img/' + plusUrl + str(n)+'.jpg','wb') as h: # 이미지 + 사진번호 + 확장자는 jpg
img = f.read() #이미지 읽기
h.write(img) # 이미지 저장
n += 1
print('다운로드 완료')
6. 결과 화면
1) cmd창
2) 다운로드 폴더
이상 Python으로 이미지 크롤링 및 다운로드하기
'프로그래밍 > python' 카테고리의 다른 글
Python 백준 알고리즘 2753번 윤년, 2884 알람 문제풀기 (0) | 2020.09.07 |
---|---|
Python 백준 알고리즘 곱셈 문제 풀기 (0) | 2020.09.06 |
Python 백준 알고리즘 문제 A+B 및 사칙연산 풀기(input,map,split) (0) | 2020.09.06 |
파이썬으로 네이버 실시간검색 순위 클롤링(crawling) 하기 (0) | 2020.09.02 |
파이썬 다운로드, 설치 하기 (0) | 2020.09.02 |